$attributes, 'email' => $email, 'whatsapp' => $whatsapp]; } //TODO: Make a toggle-more when the md contains function renderEngage($name, $raw, $echo = true, $meta = [], $settings = []) { //if (!$open) echo engageButton($name, $class); $class = valueIfSet($settings, VARNoContentBoxes) ? features::engage : _getCBClassIfWanted(features::engage); $class = '" class="' . $class . '"'; $data = getEngageData($meta); $result = '
' . NEWLINE; $result .= renderMarkdown($raw, [replacer::replaces => getEngageReplaces($data['email'], $data['whatsapp']), 'echo' => false]); $result .= getEngageToolbox(); $result .= '
' . NEWLINE; if (!$echo) return $result; echo $result; } function getEngageReplaces($email = false, $whatsapp = false) { if (!disk_file_exists($note = (AMADEUSDATA . 'engage-note.md'))) return []; if (!$email) $email = variable(VAREmail); if (!$whatsapp) $whatsapp = variable(VARWhatsapp); return array_merge([ VAREngageNote => tryEnrichEngageNote('
' . returnLine($note) . '
', VAREngageNote), VAREngageNoteAbove => disk_file_exists($note2 = (AMADEUSDATA . 'engage-note-above.md')) ? tryEnrichEngageNote(returnLine($note2), VAREngageNoteAbove) : '', VAREmail => $email, VARWhatsapp => $whatsapp . getHtmlVariable('enquiry'), ], variableOr(VAREngageFields, [])); } function getEngageToolbox() { return getSnippet('engage-toolbox', CORESNIPPET); } function tryEnrichEngageNote($content, $where) { return function_exists('enrichEngageNote') ? enrichEngageNote($content, $where) : $content; } function renderEngageFields($raw) { return replaceItems($raw, [ '[field]' => '', '[field-TicketId]' => '%TicketId%', ]); } function runEngageFromSheet($pageName, $sheetName) { $sheet = getSheet($sheetName); $contentIndex = $sheet->columns['content']; $introIndex = $sheet->columns['section-intro']; $varsIndex = valueIfSet($sheet->columns, 'item_vars'); $introduction = valueIfSet($sheet->values, 'introduction', 'Welcome to ' . humanize($pageName) . ' page of ' . variable('name') . '.'); //TODO: use faq by category like canvas' FAQ? //$items = []; //trying to make as pills in a later version $raw = ['', $introduction, '']; $firstSection = true; $customEngageNotes = variable('custom-engage-notes'); if (!$customEngageNotes) $raw[] = '%engage-note-above%'; foreach ($sheet->group as $name => $rows) { $raw[] = '## ' . $name; $raw[] = ''; $firstRow = true; foreach ($rows as $row) { if ($firstRow) { $raw[] = $row[$introIndex]; $raw[] = ''; $firstRow = false; } $line = $row[$contentIndex]; if ($varsIndex) { $vars = $row[$varsIndex]; if ($vars) { $vbits = explode(', ', $vars); if (in_array('open', $vbits)) $line .= ''; if (in_array('large', $vbits)) $line .= ''; } } $raw[] = '* ' . $line; //$content[] = ; } $raw[] = ''; } $raw[] = ''; if (!$customEngageNotes) $raw[] = '%engage-note%'; //$raw = print_r($items, 1); //$raw = renderPills($items); //todo: LATER! sectionId('engage-' . urlize($pageName)); renderEngage($pageName, implode(NEWLINE, $raw)); sectionEnd(); }