- return XDB::iterator('SELECT e.jtid, e.name, e.full_name'.$count.', IF(rf.jtid_1 IS NULL, 1, 0) AS leaf
+ if (!empty($token_filter)) {
+ $join .= ' INNER JOIN profile_job_term_relation AS rtf ON (rtf.jtid_1 = e.jtid) '.
+ self::token_join_query(self::tokenize($token_filter), 'rtf', 'jtid_2');
+ if (!$countingterms) {
+ $countingterms = 'rtf.jtid_2';
+ }
+ }
+ if (!$countingterms) {
+ $select_leaf = 'IF(r_subbranch.jtid_1 IS NULL,1,0)';
+ $join .= ' LEFT JOIN profile_job_term_relation AS r_subbranch ON (r_subbranch.jtid_1 = e.jtid AND r_subbranch.computed = "original") ';
+ } else {
+ // branches that have counting terms different that
+ // main branch will have subbranches
+ $select_leaf = 'MIN('.$countingterms.' = e.jtid)';
+ }
+ return XDB::iterator('SELECT e.jtid, e.name, e.full_name'.$count.', '.$select_leaf.' AS leaf