A while back a suggestion was made (probably not for the first time) that appending "(OP)" to the topic starter's name would make it much easier to identify subsequent posts made by them.
The initial response was lukewarm, but by the time the
topic died down, there were a good number of members (TheUltraElite, LoyceV, isaac_clarke22, KingsDen, sheenshane, Stalker22, vapourminer, Pmalek, dkbit98, The Pharmacist, Smartvirus, Mr.right85) that agreed it was a fine idea and that they would find it useful.
Thankfully, the current forum software is a modified version of SMF, which is both open-source and run by nice people that still offer old archived versions of their releases for download.
So, I thought I'd figure out how to implement this suggestion in SMF 1.1.19 and try my luck getting theymos to accept the patch.
I've implemented this change in 5 different styles (with 5 different patches) so theymos can choose the most appropriate one.
Style AThis one signifies the OP by appending "(OP)" (in bold) to their name:
--- /var/www/baseline/Themes/default/Display.template.php 2010-10-22 01:38:35.000000000 +0000
+++ /var/www/modified/Themes/default/Display.template.php 2022-09-10 03:27:48.000000000 +0000
@@ -261,13 +261,13 @@
// Show information about the poster of this message.
echo '
<table width="100%" cellpadding="5" cellspacing="0" style="table-layout: fixed;">
<tr>
<td valign="top" width="16%" rowspan="2" style="overflow: hidden;">
- <b>', $message['member']['link'], '</b>
+ <b>', $message['member']['link'], !$message['member']['is_guest'] && $message['member']['is_topic_starter'] ? ' <span title="This member is the topic starter" style="cursor: help;">(OP)</span>' : '', '</b>
<div class="smalltext">';
// Show the member's custom title, if they have one.
if (isset($message['member']['title']) && $message['member']['title'] != '')
echo '
', $message['member']['title'], '<br />';
Style BThis one signifies the OP by appending "(OP)" (not in bold) to their name:
--- /var/www/baseline/Themes/default/Display.template.php 2010-10-22 01:38:35.000000000 +0000
+++ /var/www/modified/Themes/default/Display.template.php 2022-09-10 03:31:02.000000000 +0000
@@ -261,13 +261,13 @@
// Show information about the poster of this message.
echo '
<table width="100%" cellpadding="5" cellspacing="0" style="table-layout: fixed;">
<tr>
<td valign="top" width="16%" rowspan="2" style="overflow: hidden;">
- <b>', $message['member']['link'], '</b>
+ <b>', $message['member']['link'], '</b>', !$message['member']['is_guest'] && $message['member']['is_topic_starter'] ? ' <span title="This member is the topic starter" style="cursor: help;">(OP)</span>' : '', '
<div class="smalltext">';
// Show the member's custom title, if they have one.
if (isset($message['member']['title']) && $message['member']['title'] != '')
echo '
', $message['member']['title'], '<br />';
Style CThis one signifies the OP by adding a small "OP" underneath their name:
--- /var/www/baseline/Themes/default/Display.template.php 2010-10-22 01:38:35.000000000 +0000
+++ /var/www/modified/Themes/default/Display.template.php 2022-09-10 03:39:50.000000000 +0000
@@ -264,12 +264,17 @@
<table width="100%" cellpadding="5" cellspacing="0" style="table-layout: fixed;">
<tr>
<td valign="top" width="16%" rowspan="2" style="overflow: hidden;">
<b>', $message['member']['link'], '</b>
<div class="smalltext">';
+ // Show the text "OP" (with an explanation tooltip), if this member is the topic starter.
+ if (!$message['member']['is_guest'] && $message['member']['is_topic_starter'])
+ echo '
+ ', '<span title="This member is the topic starter" style="cursor: help;">OP</span>', '<br />';
+
// Show the member's custom title, if they have one.
if (isset($message['member']['title']) && $message['member']['title'] != '')
echo '
', $message['member']['title'], '<br />';
// Show the member's primary group (like 'Administrator') if they have one.
Style DThis one signifies the OP by putting their name in italics:
--- /var/www/baseline/Themes/default/Display.template.php 2010-10-22 01:38:35.000000000 +0000
+++ /var/www/modified/Themes/default/Display.template.php 2022-09-10 03:41:49.000000000 +0000
@@ -261,13 +261,13 @@
// Show information about the poster of this message.
echo '
<table width="100%" cellpadding="5" cellspacing="0" style="table-layout: fixed;">
<tr>
<td valign="top" width="16%" rowspan="2" style="overflow: hidden;">
- <b>', $message['member']['link'], '</b>
+ <b>', !$message['member']['is_guest'] && $message['member']['is_topic_starter'] ? '<i>' . $message['member']['link'] . '</i>' : $message['member']['link'], '</b>
<div class="smalltext">';
// Show the member's custom title, if they have one.
if (isset($message['member']['title']) && $message['member']['title'] != '')
echo '
', $message['member']['title'], '<br />';
Style EThis one signifies the OP by underlining their name:
--- /var/www/baseline/Themes/default/Display.template.php 2010-10-22 01:38:35.000000000 +0000
+++ /var/www/modified/Themes/default/Display.template.php 2022-09-10 03:43:11.000000000 +0000
@@ -261,13 +261,13 @@
// Show information about the poster of this message.
echo '
<table width="100%" cellpadding="5" cellspacing="0" style="table-layout: fixed;">
<tr>
<td valign="top" width="16%" rowspan="2" style="overflow: hidden;">
- <b>', $message['member']['link'], '</b>
+ <b>', !$message['member']['is_guest'] && $message['member']['is_topic_starter'] ? '<u>' . $message['member']['link'] . '</u>' : $message['member']['link'], '</b>
<div class="smalltext">';
// Show the member's custom title, if they have one.
if (isset($message['member']['title']) && $message['member']['title'] != '')
echo '
', $message['member']['title'], '<br />';
Closing thoughtsI think my favorite is style B. It's the most obvious and I prefer the "(OP)" when it's not in bold. I also like style C because the small "OP" underneath the name somehow seems in keeping with the Bitcointalk "style" (although it does consume vertical space). Style D is subtle and non-intrusive, which I like. I like styles A & E the least.
I experimented with different background colors and tried a few linear gradients as a way to make the OP's posts stand out, but I decided against anything too heavy-handed because I kind of love the forum just the way it is!
I've carefully tested these patches, but I'm pretty sure they won't cleanly apply to the modified version of SMF that this forum runs on. Luckily, they're tiny and easy to understand, so massaging them into place should be very straightforward.
Okay, that's all for now, I hope theymos accepts one of these patches!
Update (2022/9/10)Based on a suggestion from dkbit98, I've updated the patches above (A, B & C) to include a tooltip (explanation text) when you hover over the "OP" letters (see below for an example).
I've also added a new style which uses this tooltip together with an icon (as suggested by KingsDen). Right now, the icon is Unicode character "✍" (U+270D: Writing Hand).
Obviously, theymos is free to decide on a different icon and reword the tooltip, but I think this style is my new favorite!
Style FThis one signifies the OP by adding a little icon next to their name:
--- /var/www/baseline/Themes/default/Display.template.php 2010-10-22 01:38:35.000000000 +0000
+++ /var/www/modified/Themes/default/Display.template.php 2022-09-10 03:58:47.000000000 +0000
@@ -261,13 +261,13 @@
// Show information about the poster of this message.
echo '
<table width="100%" cellpadding="5" cellspacing="0" style="table-layout: fixed;">
<tr>
<td valign="top" width="16%" rowspan="2" style="overflow: hidden;">
- <b>', $message['member']['link'], '</b>
+ <b>', $message['member']['link'], '</b>', !$message['member']['is_guest'] && $message['member']['is_topic_starter'] ? ' <span title="This member is the topic starter" style="cursor: help;">✍</span>' : '', '
<div class="smalltext">';
// Show the member's custom title, if they have one.
if (isset($message['member']['title']) && $message['member']['title'] != '')
echo '
', $message['member']['title'], '<br />';
Update (2022/9/13)One of these patches (style B) was
accepted by theymos! I'm humbled at being allowed to contribute to the forum in my own small way and very appreciative of the kind words that people have left in this thread.