1
0

Added Searching

This commit is contained in:
2014-08-04 14:57:13 +02:00
parent 193c9f376d
commit 2af3e05fe1
14 changed files with 242 additions and 10 deletions

View File

@@ -119,4 +119,41 @@ class BlogPost extends CActiveRecord
return '/blog/' . $this->ID . '/' . $name;
}
/**
* @param $search string[]
* @return array()
*/
public static function getSearchResults($search)
{
/* @var $all BlogPost[] */
/* @var $resultarr BlogPost[] */
$all = BlogPost::model()->findAll();
$resultarr = array();
foreach($search as $searchpart)
{
foreach($all as $post)
{
if (stripos($post->Title, $searchpart) !== false && ! in_array($post, $resultarr))
$resultarr []= $post;
}
}
$result = array();
foreach($resultarr as $post)
{
$result []=
[
'Name' => $post->Title,
'Description' => null,
'Link' => $post->GetLink(),
'Image' => '/images/search/sresult_blog.png',
];
}
return $result;
}
}

View File

@@ -126,4 +126,41 @@ class HighscoreGames extends CActiveRecord
else
return null;
}
/**
* @param $search string[]
* @return array()
*/
public static function getSearchResults($search)
{
/* @var $all HighscoreGames[] */
/* @var $resultarr HighscoreGames[] */
$all = HighscoreGames::model()->findAll();
$resultarr = array();
foreach($search as $searchpart)
{
foreach($all as $hgame)
{
if (stripos($hgame->NAME, $searchpart) !== false && ! in_array($hgame, $resultarr))
$resultarr []= $hgame;
}
}
$result = array();
foreach($resultarr as $hgame)
{
$result []=
[
'Name' => $hgame->NAME . ' (Highscore)',
'Description' => null,
'Link' => $hgame->GetListLink(),
'Image' => '/images/search/sresult_highscores.png',
];
}
return $result;
}
}

View File

@@ -113,4 +113,41 @@ class Log extends CActiveRecord
public function getLink() {
return '/log/' . $this->ID;
}
/**
* @param $search string[]
* @return array()
*/
public static function getSearchResults($search)
{
/* @var $all Log[] */
/* @var $resultarr Log[] */
$all = Log::model()->findAll();
$resultarr = array();
foreach($search as $searchpart)
{
foreach($all as $post)
{
if (stripos($post->title, $searchpart) !== false && ! in_array($post, $resultarr))
$resultarr []= $post;
}
}
$result = array();
foreach($resultarr as $post)
{
$result []=
[
'Name' => $post->title,
'Description' => null,
'Link' => $post->GetLink(),
'Image' => '/images/search/sresult_log.png',
];
}
return $result;
}
}

View File

@@ -279,4 +279,47 @@ class Program extends CActiveRecord
{
return HighscoreGames::model()->findByPk($this->highscore_gid);
}
/**
* @param $search string[]
* @return array()
*/
public static function getSearchResults($search)
{
/* @var $all Program[] */
/* @var $resultarr Program[] */
$all = Program::model()->findAll();
$resultarr = array();
foreach($search as $searchpart)
{
foreach($all as $prog)
{
if (! $prog->enabled || ! $prog->visible)
continue;
if (stripos($prog->Name, $searchpart) !== false && ! in_array($prog, $resultarr))
$resultarr []= $prog;
if (stripos($prog->Description, $searchpart) !== false && ! in_array($prog, $resultarr))
$resultarr []= $prog;
}
}
$result = array();
foreach($resultarr as $prog)
{
$result []=
[
'Name' => $prog->Name,
'Description' => $prog->Description,
'Link' => $prog->GetLink(),
'Image' => $prog->GetImagePath(),
];
}
return $result;
}
}