is_off_record()) { // This can later allow SOGS // to pass server-wide info using hidden dummy rooms. return; } $pubkey = $room->server->get_pubkey(); $icon_hue = hexdec($pubkey[2] . $pubkey[2]); $icon_color = "hsl($icon_hue, 80%, 50%)"; $server_icon = server_icon($room->server, '64x64'); $pubkey_shorthand = strtoupper($pubkey[0] . $pubkey[1]); $id = html_sanitize($room->get_room_identifier()); $language = html_sanitize($room->get_language_flag()); $name = html_sanitize($room->name); // $name_trunc = truncate($name, 16); $name_trunc = "Community"; $desc = html_sanitize($room->description); $users = html_sanitize($room->active_users); $users_cutoff = html_sanitize($room->format_user_cutoff_period()); $users_tooltip = $room->read ? "$users active users in the last $users_cutoff" : "$users users with read privileges, ??? others"; $users = $room->read ? $users : "—"; $preview_link = html_sanitize($room->get_preview_url()); $join_link = html_sanitize($room->get_join_url()); $pubkey = html_sanitize($pubkey); $hostname = html_sanitize($room->server->get_hostname()); $class_list = ["room-row"]; if ($room->is_stickied_room()) { $class_list[] = "room-row-stickied"; } $classname = implode(" ", $class_list); /** * Note on refactoring: * Icon is hard to move to JSON because it'd have to be generated by fetching code * Icon safety is depended on by CSS styles */ ?> :icon_safety()?>' > get_showcased_room_tags() as $tag): ?> get_text_sanitized(), 16) ?>
Copy this