|
@@ -2071,9 +2071,10 @@ class Skill extends Model
|
|
|
/**
|
|
|
* Get skills
|
|
|
* @param int $userId
|
|
|
+ * @param int level
|
|
|
* @return array
|
|
|
*/
|
|
|
- public function getStudentSkills($userId)
|
|
|
+ public function getStudentSkills($userId, $level = 0)
|
|
|
{
|
|
|
$sql = "SELECT s.id, s.name, sru.acquired_skill_at
|
|
|
FROM {$this->table} s
|
|
@@ -2084,17 +2085,26 @@ class Skill extends Model
|
|
|
$result = Database::query($sql);
|
|
|
|
|
|
$skills = [];
|
|
|
-
|
|
|
foreach ($result as $item) {
|
|
|
- $skills[] = [
|
|
|
- 'name' => self::translateName($item['name']),
|
|
|
- 'acquired_skill_at' => $item['acquired_skill_at'],
|
|
|
- ];
|
|
|
+ if (empty($level)) {
|
|
|
+ $skills[] = [
|
|
|
+ 'name' => self::translateName($item['name']),
|
|
|
+ 'acquired_skill_at' => $item['acquired_skill_at'],
|
|
|
+ ];
|
|
|
+ } else {
|
|
|
+ $parents = self::get_parents($item['id']);
|
|
|
+ // +2 because it takes into account the root
|
|
|
+ if (count($parents) == $level + 1) {
|
|
|
+ $skills[] = [
|
|
|
+ 'name' => self::translateName($item['name']),
|
|
|
+ 'acquired_skill_at' => $item['acquired_skill_at'],
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
return $skills;
|
|
|
}
|
|
|
-
|
|
|
/**
|
|
|
* @param string $name
|
|
|
* @return string
|