Mercurial > hg > fapweb
changeset 531:ec30ad303bd1
Modularize.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 11 Dec 2013 01:32:16 +0200 |
parents | ddbc84031a7b |
children | 5bb086789928 |
files | msite.inc.php |
diffstat | 1 files changed, 51 insertions(+), 43 deletions(-) [+] |
line wrap: on
line diff
--- a/msite.inc.php Tue Dec 10 17:51:20 2013 +0200 +++ b/msite.inc.php Wed Dec 11 01:32:16 2013 +0200 @@ -417,6 +417,56 @@ } +function stGetCompoResultsSQL($mode, $compo_id) +{ + switch ($mode) + { + case VOTE_FREELY: + $sql = + "SELECT entries.*,SUM(votes.value) AS votesum FROM entries ". + "LEFT JOIN votes ON votes.entry_id=entries.id ". + "WHERE entries.compo_id=".$compo_id; + break; + + case VOTE_ACTIVATE: + $sql = + "SELECT entries.*, ". + "(SELECT SUM(votes.value) FROM votes ". + "LEFT JOIN votekeys ON votes.key_id=votekeys.id ". + "WHERE votes.entry_id=entries.id AND votekeys.active<>0) ". + "AS votesum ". + "FROM entries ". + "WHERE entries.compo_id=".$compo_id; + break; + + case VOTE_ASSIGN: + $sql = + "SELECT entries.*,SUM(votes.value) AS votesum FROM entries ". + "LEFT JOIN votes ON votes.entry_id=entries.id ". + "LEFT JOIN attendees ON votes.key_id=attendees.key_id ". + "WHERE entries.compo_id=".$compo_id." ". + "AND attendees.key_id<>0"; + + $sql = + "SELECT entries.*, ". + "(SELECT SUM(votes.value) FROM votes ". + "LEFT JOIN votekeys ON votes.key_id=votekeys.id ". + "LEFT JOIN attendees ON votekeys.id=attendees.key_id ". + "WHERE votes.entry_id=entries.id AND attendees.key_id<>0) ". + "AS votesum ". + "FROM entries ". + "WHERE entries.compo_id=".$compo_id; + break; + } + + $sql .= " ". + "GROUP BY entries.id ". + "ORDER BY votesum DESC"; + + return $sql; +} + + function stGetCompoResultsASCIIStr($showAuthors, $html) { if (($res = stExecSQL("SELECT * FROM compos WHERE visible<>0 ORDER BY name DESC")) === false) @@ -436,49 +486,7 @@ if (($nentries = stFetchSQLColumn($sql)) !== FALSE && $nentries > 0) { // Get voting results by mode - switch ($voteKeyMode) - { - case VOTE_FREELY: - $sql = - "SELECT entries.*,SUM(votes.value) AS votesum FROM entries ". - "LEFT JOIN votes ON votes.entry_id=entries.id ". - "WHERE entries.compo_id=".$compo["id"]; - break; - - case VOTE_ACTIVATE: - $sql = - "SELECT entries.*, ". - "(SELECT SUM(votes.value) FROM votes ". - "LEFT JOIN votekeys ON votes.key_id=votekeys.id ". - "WHERE votes.entry_id=entries.id AND votekeys.active<>0) ". - "AS votesum ". - "FROM entries ". - "WHERE entries.compo_id=".$compo["id"]; - break; - - case VOTE_ASSIGN: - $sql = - "SELECT entries.*,SUM(votes.value) AS votesum FROM entries ". - "LEFT JOIN votes ON votes.entry_id=entries.id ". - "LEFT JOIN attendees ON votes.key_id=attendees.key_id ". - "WHERE entries.compo_id=".$compo["id"]." ". - "AND attendees.key_id<>0"; - - $sql = - "SELECT entries.*, ". - "(SELECT SUM(votes.value) FROM votes ". - "LEFT JOIN votekeys ON votes.key_id=votekeys.id ". - "LEFT JOIN attendees ON votekeys.id=attendees.key_id ". - "WHERE votes.entry_id=entries.id AND attendees.key_id<>0) ". - "AS votesum ". - "FROM entries ". - "WHERE entries.compo_id=".$compo["id"]; - break; - } - - $sql .= " ". - "GROUP BY entries.id ". - "ORDER BY votesum DESC"; + $sql = stGetCompoResultsSQL($voteKeyMode, $compo["id"]); // List results $prev = FALSE;