From 2af3e05fe1a62039347d425966182bc98d5d8a8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20Schw=C3=B6rer?= Date: Mon, 4 Aug 2014 14:57:13 +0200 Subject: [PATCH] Added Searching --- www/css/styles.css | 36 ++++++++++++++- www/images/search/sresult_blog.png | Bin 0 -> 4994 bytes www/images/search/sresult_highscores.png | Bin 0 -> 13745 bytes www/images/search/sresult_log.png | Bin 0 -> 10688 bytes www/index.php | 4 +- www/protected/components/MSController.php | 1 + .../controllers/MsmainController.php | 19 +++++++- www/protected/models/BlogPost.php | 37 +++++++++++++++ www/protected/models/HighscoreGames.php | 37 +++++++++++++++ www/protected/models/Log.php | 37 +++++++++++++++ www/protected/models/Program.php | 43 ++++++++++++++++++ www/protected/views/layouts/main.php | 1 + www/protected/views/msmain/searchresults.php | 32 +++++++++++++ www/protected/yiic.php | 5 +- 14 files changed, 242 insertions(+), 10 deletions(-) create mode 100644 www/images/search/sresult_blog.png create mode 100644 www/images/search/sresult_highscores.png create mode 100644 www/images/search/sresult_log.png create mode 100644 www/protected/views/msmain/searchresults.php diff --git a/www/css/styles.css b/www/css/styles.css index 47dcd20..23548ca 100644 --- a/www/css/styles.css +++ b/www/css/styles.css @@ -673,4 +673,38 @@ ul.nav li.dropdown-append:hover > ul.dropdown-menu { .blogFooterRight { float: right; -} \ No newline at end of file +} + +/* SearchResults +-------------------------------------------------- */ + +.sresults_main { + box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.35); +} + +.sresults_image { + height: 100px; + padding-right: 10px; +} + +.sresults_section { + border-bottom: 1px solid #D0D0D0; + margin: 10px; + overflow: hidden; + padding-bottom: 5px; + display: block; +} + +.sresults_caption { + margin-top: 0px; +} + +.sresults_desc { + width: 65%; +} + +.sresults_info { + color: #929292; + font-size: small; +} + diff --git a/www/images/search/sresult_blog.png b/www/images/search/sresult_blog.png new file mode 100644 index 0000000000000000000000000000000000000000..2aceb23c1a62aa61f69ce2e15308a1d63b50e11f GIT binary patch literal 4994 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 OzB87#7M12+xBmw^v3*_u literal 0 HcmV?d00001 diff --git a/www/images/search/sresult_highscores.png b/www/images/search/sresult_highscores.png new file mode 100644 index 0000000000000000000000000000000000000000..c5bb29118b21ab2e54873275ccbbc0f62139497c GIT binary patch literal 13745 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 F{ts%-*Pj3Y literal 0 HcmV?d00001 diff --git a/www/images/search/sresult_log.png b/www/images/search/sresult_log.png new file mode 100644 index 0000000000000000000000000000000000000000..f32e9d787067259814aa10a79315ec0fcf600438 GIT binary patch literal 10688 zcmX9^Wmr^Q*QUE9l`iQJkREbqq)R~QMoKyaq`O19q`NznkZzR+Pp>BSwRPfx(oOkx+$!f&K6A0Tej!JL{P*5j?;;s!EH)RE(1DfhP#& zVhUm~FxAoMkA{fgIjX&kwj&G-*02A5VEgTgOu&n;og_axso9x1xf*^og|RoZv~^;$ zHFctV&-RXu^I^TP4+e&jLsmje-A(W4Td*$P-u?AW<6}ZnHa>cGb}kBB_|wPasL62Z z5SbIWB;(I>*Mb!_`}-wL*Fn_e_!4^>;O zKa4|3>{+~aneG1m85tRok>&4D`S|#T9i2Y?J3QPuKHl3-j7@AeKk1MU)LO{rT#%-j zCPGso&o|vJ-g{GVd~8(xcY4}s@~7-eo?VwG4>uQHXs@QGW~pXnsFKX%!NOI?oPV8? z9D_ZYJo)kyy!i{?OMJgk5ge6NZ)zsIY6`^t{PGRg<0E{Ws%nYVfig$jq&zzVrTg?W zFQrGphYY#EL@GD|G1wg<9Q)(PKy!8`PyP0S&j{jTDh%gtk6U|v*_4isj!aP)WM|i{9=&LrIhX8r6Umt;vrGT4wz2lk~O{|(G%}Q?Dl!*es027eHk%4T4B3DKr_v8m(ZVRJ;%bzTAWRJYZubHA>?^e zKQ!QrFZ`zva(WdmLCr*pk^mFM8pK1t9Vxt9iO7{Pr=H{8GV4`ZIU4iNw8X47aFcftZr??oR@^4A} zA)lR{)msrBtaG&=?@v_TddJNj86MrA`17-_c!kBlyz%+gA2n8%*_Xp+8s5ssyKqqC zgAymLCu`l~rzox3wGok##WYvQ)YW`GH^(j;)Ai6_!{jJVy1K1Zry;9j8S&SblZxfT zpiCuuqZ{by_ytCJxw!IlCh))}Y)#kgXrBL$@gz35e#gn9SMPC^-^2XjJ4hSAsn?b|@IrA{0ipnXws|?qC%vLE;c@ULFqZ8mIZE;9lY#Oi9hz*>c^^Oo8vu zFmXZOsFg7IbH1Bk>k77tuoHdlFk$^Vp^lEePkIk;Y`hsMCic77S`j)x9#5}yeSKA4 zY?qxO?nq6veK;`FN}}ysTx_W$g_I(ePlYK)UiDL2>5;wsTg7c|flD_W{r(3J#Ojaf z@oDsX36sLFa_-*;Y*@{fX}@^uNLgnwQ@8o~L1VIu;`a!~9lk^^N_nAJ6Z=8n{Qc@1 zkzw{rY5Jp-W)?Mkw`qt%u??l6G5y!SX>~T2&W9;{KBVzP3Z#(33DcS#%qAa^)s0E= zv4Kk{^bvttr|SwccyGNk$8zR;LMSOaBoka1pv%ViQwrfr{h+J<7&6P(SXNf-tkV=D zkg@`ⅅ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 UdISPCIA94QE2$_^A#ULJf1QEP<^TWy literal 0 HcmV?d00001 diff --git a/www/index.php b/www/index.php index 500ee99..fc9fc7f 100644 --- a/www/index.php +++ b/www/index.php @@ -10,6 +10,4 @@ defined('YII_DEBUG') or define('YII_DEBUG',true); defined('YII_CUSTOM_ENV') or define('YII_CUSTOM_ENV', 'dev'); require_once($yii); -Yii::createWebApplication($config)->run(); - -// TODO-MS Add Search (Blog + progs + log) jew auch metadata / desc ... \ No newline at end of file +Yii::createWebApplication($config)->run(); \ No newline at end of file diff --git a/www/protected/components/MSController.php b/www/protected/components/MSController.php index b3ffe01..9fd723e 100644 --- a/www/protected/components/MSController.php +++ b/www/protected/components/MSController.php @@ -15,6 +15,7 @@ class MSController extends CController public $title = null; + public $searchvalue = ''; public function beforeAction($e){ Yii::app()->hitcounter->increment(); diff --git a/www/protected/controllers/MsmainController.php b/www/protected/controllers/MsmainController.php index fa22025..8215d51 100644 --- a/www/protected/controllers/MsmainController.php +++ b/www/protected/controllers/MsmainController.php @@ -21,7 +21,7 @@ class MSMainController extends MSController { return array( array('allow', - 'actions'=>array('index', 'about', 'debugerror', 'error', 'login', 'logout'), + 'actions'=>array('index', 'about', 'debugerror', 'error', 'login', 'logout', 'search'), 'users'=>array('*'), ), array('allow', @@ -149,5 +149,20 @@ class MSMainController extends MSController $this->redirect(Yii::app()->homeUrl); } - public function action + public function actionSearch($search) + { + $searchsplit = preg_split('[\+| ]', $search, 8, PREG_SPLIT_NO_EMPTY); + + $results = array_merge( + Program::getSearchResults($searchsplit), + BlogPost::getSearchResults($searchsplit), + Log::getSearchResults($searchsplit), + HighscoreGames::getSearchResults($searchsplit)); + + $this->render('searchresults', + [ + 'searchstring' => $search, + 'result' => $results, + ]); + } } \ No newline at end of file diff --git a/www/protected/models/BlogPost.php b/www/protected/models/BlogPost.php index b1d6753..349b01a 100644 --- a/www/protected/models/BlogPost.php +++ b/www/protected/models/BlogPost.php @@ -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; + } } diff --git a/www/protected/models/HighscoreGames.php b/www/protected/models/HighscoreGames.php index ff8bf9d..3255a16 100644 --- a/www/protected/models/HighscoreGames.php +++ b/www/protected/models/HighscoreGames.php @@ -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; + } } diff --git a/www/protected/models/Log.php b/www/protected/models/Log.php index e0559d9..81649a3 100644 --- a/www/protected/models/Log.php +++ b/www/protected/models/Log.php @@ -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; + } } diff --git a/www/protected/models/Program.php b/www/protected/models/Program.php index 65558c6..f63a8ab 100644 --- a/www/protected/models/Program.php +++ b/www/protected/models/Program.php @@ -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; + } } diff --git a/www/protected/views/layouts/main.php b/www/protected/views/layouts/main.php index cd8d128..74821e4 100644 --- a/www/protected/views/layouts/main.php +++ b/www/protected/views/layouts/main.php @@ -64,6 +64,7 @@ 'placeholder' => 'Search', 'inputOptions' => [ + 'value' => $this->searchvalue, 'append' => MsHtml::submitButton(MsHtml::icon(MsHtml::ICON_SEARCH)), 'addOnOptions' => [ diff --git a/www/protected/views/msmain/searchresults.php b/www/protected/views/msmain/searchresults.php new file mode 100644 index 0000000..9a14fe1 --- /dev/null +++ b/www/protected/views/msmain/searchresults.php @@ -0,0 +1,32 @@ +pageTitle = 'Search - ' . $searchstring; +$this->searchvalue = $searchstring; + +$this->breadcrumbs= + [ + 'Search' + ]; + +?> + +
+
+ results found for "" + + +
+ + + +

+ +

+ +
+ +
+
\ No newline at end of file diff --git a/www/protected/yiic.php b/www/protected/yiic.php index d6aea25..8dfd10a 100644 --- a/www/protected/yiic.php +++ b/www/protected/yiic.php @@ -9,7 +9,4 @@ require_once($yiic); // TODO-MS SharkSim (OLD DATE !) -> MS.de // TODO-MS BefunGen -> MS.de // TODO-MS jClipCorn -> MS.de -// TODO-MS jQCCounter (OLD DATE !) -> MS.de - - -//TODO-MS Add Guest counter \ No newline at end of file +// TODO-MS jQCCounter (OLD DATE !) -> MS.de \ No newline at end of file