Example #1
0
 public static function search($keyword)
 {
     $keyword = Database::escape_string($keyword);
     $query = "SELECT DISTINCT(SearchResult.nefub_id) as ID, name as Name, type as Type, subtitle as Subtitle, url as URL\n\t\t\t\t\tFROM SearchResult\n\t\t\t\t\tWHERE SearchResult.name LIKE '%" . $keyword . "%'\n\t\t\t\t\tAND SearchResult.type = 'team'\n\t\t\t\t\tORDER BY  SearchResult.name LIKE '" . $keyword . "%' DESC, SearchResult.name ASC";
     $result = Database::query($query);
     $teams = Database::convertResult($result);
     $query = "SELECT DISTINCT(SearchResult.nefub_id) as ID, name as Name, type as Type, subtitle as Subtitle, url as URL\n\t\t\t\t\tFROM SearchResult\n\t\t\t\t\tWHERE SearchResult.name LIKE '%" . $keyword . "%'\n\t\t\t\t\tAND SearchResult.type = 'person'\n\t\t\t\t\tORDER BY  SearchResult.name LIKE '" . $keyword . "%' DESC, SearchResult.name ASC";
     $result = Database::query($query);
     $persons = Database::convertResult($result);
     $results = array_merge($teams, $persons);
     return $results;
 }
Example #2
0
 public static function getSortedByAlphabet()
 {
     $class = get_called_class();
     $instances = array();
     $iAsciiA = 65;
     $iAsciiZ = $iAsciiA + 25;
     for ($iAscii = $iAsciiA; $iAscii <= $iAsciiZ; $iAscii++) {
         $letter = chr($iAscii);
         $query = "SELECT `NefubObject`.`ID`\n\t\t\t\t\t\tFROM `" . $class . "` as NefubObject\n\t\t\t\t\t\tWHERE UPPER(`NefubObject`.`name`)\n\t\t\t\t\t\tLIKE '" . $letter . "%'\n\t\t\t\t\t\tORDER BY `NefubObject`.`name` ASC";
         $r = Database::query($query);
         $rows = Database::convertResult($r);
         if (count($rows)) {
             if (!$aPersons[$letter]) {
                 $aPersons[$letter] = array();
             }
             foreach ($rows as $row) {
                 $instances[$letter][] = new $class($row['ID']);
             }
         }
     }
     return $instances;
 }
Example #3
0
 public static function getAllFromQuery($query)
 {
     $class = get_called_class();
     $result = Database::query($query);
     $rows = Database::convertResult($result);
     $instances = array();
     foreach ($rows as $row) {
         $instances[] = new $class($row['id']);
     }
     return $instances;
 }
Example #4
0
 public static function getPlannedLocationGames(Location $oLocation)
 {
     $where[] = "Game.location_nefub_id = '" . $oLocation->nefub_id . "'";
     $where[] = "Game.date >= CURDATE()";
     $where[] = "Game.date IS NOT NULL";
     $where = implode(' AND ', $where);
     $query = "SELECT Game.*\r\n\t\t\t\t\tFROM Game \t\t\t\t\t\r\n\t\t\t\t\tWHERE {$where}\t\t\t\t\t\r\n\t\t\t\t\tORDER BY Game.date ASC,\r\n\t\t\t\t\tGame.time ASC\r\n\t\t\t\t\t";
     $r = Database::query($query);
     $rows = Database::convertResult($r);
     $dates = array();
     foreach ($rows as $row) {
         $oGame = new Game();
         $oGame->setData($row);
         // create array for locations per date
         if (!is_array($dates[$oGame->date])) {
             $dates[$oGame->date] = array();
         }
         // create array for times per location
         if (!is_array($dates[$oGame->date])) {
             $dates[$oGame->date] = array();
         }
         // create array for times per location
         if (!is_array($dates[$oGame->date][$oGame->time])) {
             $dates[$oGame->date][$oGame->time] = array();
         }
         $dates[$oGame->date][$oGame->time][] = $oGame;
     }
     return $dates;
 }
Example #5
0
 public static function getSortedByAlphabet()
 {
     $instances = array();
     $iAsciiA = 65;
     $iAsciiZ = $iAsciiA + 25;
     // Prefixes that are not considered for sorting
     $prefixes = array('DE', 'HET', 'THE', 'IBK', 'FB', 'UA', 'UC', 'UFCG', 'USFV', 'UFC');
     $whereLeft = "UPPER(`NefubObject`.`name`)";
     foreach ($prefixes as $prefix) {
         $whereLeft = "\nREPLACE(" . $whereLeft . ", '" . $prefix . " ', '')";
     }
     for ($iAscii = $iAsciiA; $iAscii <= $iAsciiZ; $iAscii++) {
         $letter = chr($iAscii);
         $query = "SELECT `NefubObject`.`ID`\n\t\t\t\t\t\tFROM `Team` as NefubObject\n\t\t\t\t\t\tWHERE " . $whereLeft . "\n\t\t\t\t\t\tLIKE '" . $letter . "%'\n\t\t\t\t\t\tORDER BY " . $whereLeft . " ASC, competition_nefub_id DESC";
         $r = Database::query($query);
         $rows = Database::convertResult($r);
         if (count($rows)) {
             if (!$aPersons[$letter]) {
                 $aPersons[$letter] = array();
             }
             foreach ($rows as $row) {
                 $instances[$letter][] = new self($row['ID']);
             }
         }
     }
     return $instances;
 }