Fix: only first lock red with privacy_warning

This commit is contained in:
M.Dent 2019-02-12 22:05:57 -05:00
parent 07df43aa2a
commit 5b3ea012ab

View File

@ -76,7 +76,7 @@ class ThreadItem {
* _ false on failure * _ false on failure
*/ */
public function get_template_data($conv_responses, $thread_level=1) { public function get_template_data($conv_responses, $thread_level=1, $conv_flags = []) {
$result = array(); $result = array();
@ -117,11 +117,17 @@ class ThreadItem {
} }
if ($lock) { if ($lock) {
if (count(get_terms_oftype($item['term'],TERM_FORUM))) { if (($item['mid'] == $item['parent_mid']) && count(get_terms_oftype($item['term'],TERM_FORUM))) {
$privacy_warning = true; $privacy_warning = true;
} }
} }
if ($privacy_warning) {
$conv_flags['privacy_warning'] = $privacy_warning;
} else {
$privacy_warning = (isset($conv_flags['privacy_warning'])) ? $conv_flags['privacy_warning'] : false;
}
if ($lock && $privacy_warning) { if ($lock && $privacy_warning) {
$lock = t('Privacy conflict. Discretion advised.'); $lock = t('Privacy conflict. Discretion advised.');
} }
@ -488,7 +494,7 @@ class ThreadItem {
if(($this->get_display_mode() === 'normal') && ($nb_children > 0)) { if(($this->get_display_mode() === 'normal') && ($nb_children > 0)) {
foreach($children as $child) { foreach($children as $child) {
$result['children'][] = $child->get_template_data($conv_responses, $thread_level + 1); $result['children'][] = $child->get_template_data($conv_responses, $thread_level + 1,$conv_flags);
} }
// Collapse // Collapse
if(($nb_children > $visible_comments) || ($thread_level > 1)) { if(($nb_children > $visible_comments) || ($thread_level > 1)) {