Preinteressententool:

- Filtern nach Personen die nur Preinterssenten sind
- Filtern nach Personen ohne kontaktmedium
- Bugfix beim Speichern des Ortes ohne Angabe einer Gemeinde
This commit is contained in:
Andreas Österreicher
2010-12-23 10:46:54 +00:00
parent 79f63ee7f4
commit 0025ce18f7
4 changed files with 36 additions and 16 deletions
+22 -6
View File
@@ -391,14 +391,22 @@ class preinteressent extends basis_db
}
/**
*
* Laedt die Preinteressenten
* eines Studienganges welche noch nicht
* uebernommen wurden
*
* @param $studiengang_kz
* $studiensemester_kurzbz
* @return true wenn ok, false im Fehlerfall
* @param $studiensemester_kurzbz
* @param $filter Filtert nach Nachname, Vorname, Kontakt, und Erfassungsdatum
* @param $nichtfreigegeben Wenn true werden nur personen geliefert die noch nicht freigegeben wurden
* @param $uebernommen Wenn true werden nur Personen geliefert die bereits freigegeben sind aber noch nicht uebernommen
* @param $kontaktmedium Wenn -1 werden alle geliefert die das Kontaktmedium nicht gesetzt haben, sonst bei denen das uebergeben Kontaktmedium ausgewaehlt ist
* @param $absage
* @param $erfassungsdatum_von
* @param $erfassungsdatum_bis
* @param $einverstaendnis
* @param $preinteressent Wenn true werden nur die Personen angezeigt die noch nicht als Interessent oder Student in einem Studiengang vorhanden sind
*/
public function loadPreinteressenten($studiengang_kz='', $studiensemester_kurzbz=null, $filter='', $nichtfreigegeben=null, $uebernommen=null, $kontaktmedium=null, $absage=false, $erfassungsdatum_von=null, $erfassungsdatum_bis=null, $einverstaendnis=null)
public function loadPreinteressenten($studiengang_kz='', $studiensemester_kurzbz=null, $filter='', $nichtfreigegeben=null, $uebernommen=null, $kontaktmedium=null, $absage=false, $erfassungsdatum_von=null, $erfassungsdatum_bis=null, $einverstaendnis=null, $preinteressent=null)
{
$qry = "SELECT distinct tbl_preinteressent.*
FROM public.tbl_preinteressent JOIN public.tbl_person USING(person_id)
@@ -430,7 +438,12 @@ class preinteressent extends basis_db
if($uebernommen==true)
$qry.=" AND tbl_preinteressentstudiengang.freigabedatum is not null AND tbl_preinteressentstudiengang.uebernahmedatum is null";
if(!is_null($kontaktmedium))
$qry.=" AND tbl_preinteressent.kontaktmedium_kurzbz='".addslashes($kontaktmedium)."'";
{
if($kontaktmedium=='-1')
$qry.=" AND tbl_preinteressent.kontaktmedium_kurzbz is null";
else
$qry.=" AND tbl_preinteressent.kontaktmedium_kurzbz='".addslashes($kontaktmedium)."'";
}
if(!is_null($erfassungsdatum_bis))
$qry.=" AND erfassungsdatum<='".addslashes($erfassungsdatum_bis)."'";
@@ -446,6 +459,9 @@ class preinteressent extends basis_db
if($einverstaendnis)
$qry.=" AND einverstaendnis=true";
if($preinteressent)
$qry.=" AND NOT EXISTS (SELECT * FROM public.tbl_prestudent WHERE person_id=tbl_person.person_id)";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
+1 -1
View File
@@ -352,7 +352,7 @@ else
}
//wenn die Gemeinde leer ist und im Ort etwas steht
//dann umdrehen (Das passiert wenn die Daten aus dem Mail von der www importiert werden)
if($gemeinde=='' && $ort!='')
if($gemeinde=='' && $ort!='' && !isset($_REQUEST['gemeinde_txt']))
{
$importort=$ort;
$gemeinde=$ort;
+3 -7
View File
@@ -20,12 +20,7 @@
* Rudolf Hangl < [email protected] >
* Gerald Simane-Sequens < [email protected] >
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/basis_db.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/studiengang.class.php');
@@ -39,7 +34,8 @@ require_once('../../include/firma.class.php');
require_once('../../include/nation.class.php');
require_once('../../include/mail.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user = get_uid();
+10 -2
View File
@@ -74,6 +74,8 @@ if(isset($_GET['bool_absage']))
$bool_absage = true;
else
$bool_absage = false;
$bool_preinteressent = isset($_GET['bool_preinteressent']);
if(isset($_GET['filter']))
$filter = $_GET['filter'];
@@ -174,11 +176,17 @@ echo '</SELECT></td><td>';
echo '<input type="checkbox" name="bool_nichtfreigegeben" '.($bool_nichtfreigegeben?'checked':'').'> nicht freigegeben';
echo '<input type="checkbox" name="bool_absage" '.($bool_absage?'checked':'').'> Absage';
echo '<input type="checkbox" name="bool_einverstaendnis" '.($bool_einverstaendnis?'checked':'').'> Einverständnis<br>';
echo '<input type="checkbox" name="bool_uebernommen" '.($bool_uebernommen?'checked':'').'> freigegeben aber nicht &uuml;bernommen</td><td>';
echo '<input type="checkbox" name="bool_uebernommen" '.($bool_uebernommen?'checked':'').'> freigegeben aber nicht &uuml;bernommen';
echo '<input type="checkbox" name="bool_preinteressent" '.($bool_preinteressent?'checked':'').'>nur Preinteressent</td><td>';
echo '&nbsp;&nbsp;&nbsp;<input type="submit" name="anzeigen" value="Anzeigen"></td></tr>';
echo '<tr><td>Kontaktmedium: <SELECT name="kontaktmedium">';
$qry="SELECT * FROM public.tbl_kontaktmedium ORDER BY beschreibung";
echo "<option value='' >-- Alle --</option>";
if($kontaktmedium==-1)
$selected='selected';
else
$selected='';
echo "<option value='-1' $selected >-- keine Auswahl --</option>";
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
@@ -325,7 +333,7 @@ $preinteressent = new preinteressent();
//if($filter=='')
if($datum_obj->formatDatum($filter, 'Y-m-d', true))
$filter = $datum_obj->formatDatum($filter, 'Y-m-d', true);
$preinteressent->loadPreinteressenten($studiengang_kz, ($studiensemester_kurzbz!='-1'?$studiensemester_kurzbz:null), $filter, $bool_nichtfreigegeben, $bool_uebernommen, $kontaktmedium, $bool_absage, $erfassungsdatum_von, $erfassungsdatum_bis, $bool_einverstaendnis);
$preinteressent->loadPreinteressenten($studiengang_kz, ($studiensemester_kurzbz!='-1'?$studiensemester_kurzbz:null), $filter, $bool_nichtfreigegeben, $bool_uebernommen, $kontaktmedium, $bool_absage, $erfassungsdatum_von, $erfassungsdatum_bis, $bool_einverstaendnis, $bool_preinteressent);
/*else
{
//Falls im Filter-Feld ein Datum steht dann wird dieses umformatiert