Skip to content
Snippets Groups Projects
Commit cc542bee authored by Moritz Strohm's avatar Moritz Strohm
Browse files

TandemPlugin: Improved matching query

git-svn-id: https://server2.data-quest.de/svn/studip-plugins/TandemPlugin@2454 6a1f69d7-6018-4d13-bf90-b098e98c258d
parent b3daf2ed
No related branches found
No related tags found
No related merge requests found
...@@ -14,6 +14,8 @@ ...@@ -14,6 +14,8 @@
**/ **/
require_once(__DIR__ . '/../models/TandemUserMotherLanguage.class.php');
/** /**
* This class implements the matching functionality. * This class implements the matching functionality.
*/ */
...@@ -56,12 +58,25 @@ class TandemMatching ...@@ -56,12 +58,25 @@ class TandemMatching
} }
$sql .= 'WHERE tuml.language_id = :target_language_id $sql .= 'WHERE tuml.language_id = :target_language_id
AND tuml.user_id <> :user_id '; AND tuml.user_id <> :user_id
AND tandem_requests.target_language_id IN ( :request_user_mother_language_ids ) ';
$request_user_mother_language_ids = [];
$rumls = TandemUserMotherLanguage::findBySql(
'user_id = :user_id',
['user_id' => $tandem_request->user_id]
);
foreach($rumls as $ruml) {
$request_user_mother_language_ids[] = $ruml->language_id;
}
$sql_params = [ $sql_params = [
'target_language_id' => $tandem_request->target_language_id, 'target_language_id' => $tandem_request->target_language_id,
'user_id' => $tandem_request->user_id 'user_id' => $tandem_request->user_id,
'request_user_mother_language_ids' => $request_user_mother_language_ids
]; ];
if($request_gender) { if($request_gender) {
...@@ -69,6 +84,8 @@ class TandemMatching ...@@ -69,6 +84,8 @@ class TandemMatching
$sql_params['request_gender'] = $request_gender; $sql_params['request_gender'] = $request_gender;
} }
$sql .= ' GROUP BY tandem_requests.id, tandem_requests.user_id ';
if($limit > 0) { if($limit > 0) {
$sql .= 'LIMIT :limit'; $sql .= 'LIMIT :limit';
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment