summaryrefslogtreecommitdiffstats
path: root/library
diff options
context:
space:
mode:
authorSimon2011-03-19 12:26:53 +0100
committerSimon2011-03-19 12:26:53 +0100
commit608133e70c3acdc11850f7096a56056ae1b33b31 (patch)
tree3267693240f400dede4952641ae9532ca4ac9d58 /library
parentBei Auth Controller zum testen MembershipID wählbar (diff)
downloadpbs2-608133e70c3acdc11850f7096a56056ae1b33b31.tar.gz
pbs2-608133e70c3acdc11850f7096a56056ae1b33b31.tar.xz
pbs2-608133e70c3acdc11850f7096a56056ae1b33b31.zip
Filter korrigiert
Zeitzone eingestellt fbgui oberfläche angepasst
Diffstat (limited to 'library')
-rw-r--r--library/Pbs/Filter.php112
-rw-r--r--library/Pbs/Session.php7
2 files changed, 67 insertions, 52 deletions
diff --git a/library/Pbs/Filter.php b/library/Pbs/Filter.php
index 6bfed94..9e1f6db 100644
--- a/library/Pbs/Filter.php
+++ b/library/Pbs/Filter.php
@@ -13,8 +13,12 @@ class Pbs_Filter{
$membershipMapper = new Application_Model_MembershipMapper();
$this->membership = new Application_Model_Membership();
- $membershipMapper->find($_SESSION['membershipID'],$this->membership);
-
+ if(isset($_SESSION['membershipID'])){
+ $membershipMapper->find($_SESSION['membershipID'],$this->membership);
+ }
+ else{
+ $this->membership->setID(null);
+ }
// For Testing Filters
$testFilter = (isset($_POST['submit']))?true:false;
@@ -51,8 +55,9 @@ class Pbs_Filter{
$session = new Application_Model_Session();
$sessionmapper = new Application_Model_SessionMapper();
$sessionarray = $sessionmapper->findBy('alphasessionID',$_SESSION['alphasessionID']);
- $session->setOption($sessionarray);
- $session->setID($sessionarray['sessionID'];
+ print_a($sessionarray[0]);
+ $session->setOptions($sessionarray[0]);
+ $session->setID($sessionarray['sessionID']);
#########################################################
// IP Adress
$filtertypID = 1;
@@ -175,65 +180,70 @@ class Pbs_Filter{
#########################################################
// MembershipID
$filtertypID = 5;
-
- if(!$testFilter){
- // get membership from the session
- //TODO: GET MEMBERSHIP from SESSION
- $membershipID = $this->membership->getID();
- }
- try{
- $stmt = $db->query("SELECT * FROM pbs_filterentries WHERE
- filtertypeID = ".$filtertypID." AND
- filtervalue = ".$membershipID." ");
- $result = $stmt->fetchAll();
- foreach($result as $r){
- $set[$filtertypID][] = $r['filterID'];
+ if($this->membership->getID() != null){
+ if(!$testFilter){
+ // get membership from the session
+ //TODO: GET MEMBERSHIP from SESSION
+ $membershipID = $this->membership->getID();
}
- }
- catch(Exception $e){}
+ try{
+ $stmt = $db->query("SELECT * FROM pbs_filterentries WHERE
+ filtertypeID = ".$filtertypID." AND
+ filtervalue = ".$membershipID." ");
+ $result = $stmt->fetchAll();
+ foreach($result as $r){
+ $set[$filtertypID][] = $r['filterID'];
+ }
+ }
+ catch(Exception $e){}
- if($showPartResults)
- print_a('membership',$result,$set[$filtertypID]);
+ if($showPartResults)
+ print_a('membership',$result,$set[$filtertypID]);
+ }
#########################################################
// GroupID
$filtertypID = 6;
-
- if(!$testFilter){
- // get membership from the session
- //TODO: GET GROUP from SESSION
- $groupID = $this->membership->getGroupID();
- }
- try{
- $stmt = $db->query("SELECT * FROM pbs_filterentries WHERE
- filtertypeID = ".$filtertypID." AND
- filtervalue = ".$groupID." ");
- $result = $stmt->fetchAll();
- foreach($result as $r){
- $set[$filtertypID][] = $r['filterID'];
+ if($this->membership->getID() != null){
+ if(!$testFilter){
+ // get membership from the session
+ //TODO: GET GROUP from SESSION
+ $groupID = $this->membership->getGroupID();
}
- }
- catch(Exception $e){}
+ try{
+ $stmt = $db->query("SELECT * FROM pbs_filterentries WHERE
+ filtertypeID = ".$filtertypID." AND
+ filtervalue = ".$groupID." ");
+ $result = $stmt->fetchAll();
+ foreach($result as $r){
+ $set[$filtertypID][] = $r['filterID'];
+ }
+ }
+ catch(Exception $e){}
- if($showPartResults)
- print_a('membership',$result,$set[$filtertypID]);
+ if($showPartResults)
+ print_a('membership',$result,$set[$filtertypID]);
+ }
#########################################################
// Time
$filtertypID = 7;
if(!$testFilter){
- $time = time("H:i");
+ $nowShort = date("h:i");
+ }
+ else{
+ $nowShort = date("h:i",$time);
}
-
- $nowShort = $time;
$nowShort = str_replace(":","",$nowShort);
try{
- $select = $db->select()
- ->from(array('pbs_filterentries')
- )
- ->where('filtertypeID = ?',$filtertypID)
- ->where('REPLACE(filtervalue,":","") <= ? AND ? <= REPLACE(filtervalue2,":","")',$nowShort);
- $stmt = $select->query();
+ $stmt = $db->query('SELECT * FROM pbs_filterentries WHERE
+ filtertypeID = '.$filtertypID.' AND
+ REPLACE(filtervalue,":","") <= '.$nowShort.' AND
+ REPLACE(filtervalue2,":","") >= '.$nowShort.' ');
+ print_a('SELECT * FROM pbs_filterentries WHERE
+ filtertypeID = '.$filtertypID.' AND
+ REPLACE(filtervalue,":","") <= '.$nowShort.' AND
+ REPLACE(filtervalue2,":","") >= '.$nowShort.' ');
$result = $stmt->fetchAll();
foreach($result as $r){
$set[$filtertypID][] = $r['filterID'];
@@ -335,7 +345,11 @@ class Pbs_Filter{
}
print_a('Übereinstimmungen pro Filter',$a);
// Get the number of filtertypes every filter has
- $stmt = $db->query('SELECT filterID, COUNT(filtertypeID) as num FROM pbs_filterentries GROUP BY filterID');
+ $stmt = $db->query("SELECT filterID,SUM(num) as num FROM (
+SELECT *, '1' as num
+FROM pbs_filterentries
+GROUP BY filterID, filtertypeID
+) d GROUP BY d.filterID");
$resultset = $stmt->fetchAll();
foreach($resultset as $d){
$database[$d['filterID']] = $d['num'];
@@ -386,7 +400,7 @@ class Pbs_Filter{
echo "class: ".get_class($e)."<br>\n";
echo "Error message 2: " . $e->getMessage() . "\n";
}
-
+ }
private function fillIP($ip)
{
$ar = explode(".",$ip);
diff --git a/library/Pbs/Session.php b/library/Pbs/Session.php
index eb7c927..ab29a04 100644
--- a/library/Pbs/Session.php
+++ b/library/Pbs/Session.php
@@ -16,11 +16,12 @@ class Pbs_Session{
$sessionmapper->find($id, $session);
return $session;
}
- public function createClient(Application_Model_Client $client){
+ public function createClient(Application_Model_Client $client){
$clientmapper = new Application_Model_ClientMapper();
$result = $clientmapper->findBy('macadress',$client->getMacadress());
- if(($result)>0){
- $client->setOptions($result);
+ if(count($result)>0){
+ $client->setOptions($result[0]);
+ $client->setID($result[0]['clientID']);
}
else{
$id = $clientmapper->save($client);