Welcome to the Question2Answer Q&A. There's also a demo if you just want to try it out.
+2 votes
281 views
in Q2A Core by

Hi

Recalculating points from Admin page does not work for external sso enabled users in q2a when the userids are textual (e.g. VARCHAR). It does the first 10 users it finds and then stops.

The reason is that the code from qa-app-recalc.php assumes an array of numeric user ids when they are not numeric in this case.

case 'dorecalcpoints_recalc':
$userids=qa_db_users_get_for_recalc_points($next, 10);
 
if (count($userids)) {
// james - this code is wrong, won't work on textual user ids
$lastuserid=max($userids);
 
qa_db_users_recalc_points($next, $lastuserid);
 
$next=1+$lastuserid;
$done+=count($userids);
$continue=true;
 
} else {
qa_db_truncate_userpoints($next);
qa_db_userpointscount_update(); // quick so just do it here
qa_recalc_transition($state, 'dorecalcpoints_complete');
}
break;

 

My workaround is just to increase 10 to 1000, but I have no idea if that's a good idea or not.

James

by
Very nice catch! It will be fixed for Q2A 1.6.3.

Please log in or register to answer this question.

...