How to add addthis.com code in SMF 2.0 RC 5 to show the button below every post?

Started by prs, March 23, 2011, 01:24:53 PM

Previous topic - Next topic

prs

[ I NEED ADDTHIS BUTTON HERE ]

How to add addthis.com [nofollow] code in SMF 2.0 RC 5 to show the button below or above the every post?

I checked mods but i did not find out right mod for smf 2.0 rc 5. if i use smf default theme - curve, where do i put the code? or if i use other themes, where do i put the code?

Say this clearly, it is useful to every one who is facing problem like me.

If anyone prepares mod for this, it is really good for us.

[ I NEED ADDTHIS BUTTON HERE ]

Matthew K.



Matthew K.

By the way, welcome to SMF! :) You could add the AddThis code to $message .= 'AddThisCode'; in Display.php most likely, although I'd have to verify it.

Arantor

In Display.php, inside the function prepareDisplayContext, where it's added to the $output array.

prs

Quote from: Arantor on March 23, 2011, 02:48:36 PM
In Display.php, inside the function prepareDisplayContext, where it's added to the $output array.

I don't understand that what you said well. Exactly, where to add i.e. before or after the code in Display.php?

Arantor

No, it's INSIDE Display.php, in the function prepareDisplayContext, where the post is collated. I didn't (and don't right now) have time to get into exactly what changes you need, but figured that narrowing it down to a block of maybe 30 lines might help others who do have more time to get into this.

prs

Quote from: Arantor on March 23, 2011, 03:44:14 PM
No, it's INSIDE Display.php, in the function prepareDisplayContext, where the post is collated. I didn't (and don't right now) have time to get into exactly what changes you need, but figured that narrowing it down to a block of maybe 30 lines might help others who do have more time to get into this.


Where do i put addthis code in below code?

// Callback for the message display.
function prepareDisplayContext($reset = false)
{
global $settings, $txt, $modSettings, $scripturl, $options, $user_info, $smcFunc;
global $memberContext, $context, $messages_request, $topic, $attachments, $topicinfo;

static $counter = null;

// If the query returned false, bail.
if ($messages_request == false)
return false;

// Remember which message this is.  (ie. reply #83)
if ($counter === null || $reset)
$counter = empty($options['view_newest_first']) ? $context['start'] : $context['total_visible_posts'] - $context['start'];

// Start from the beginning...
if ($reset)
return @$smcFunc['db_data_seek']($messages_request, 0);

// Attempt to get the next message.
$message = $smcFunc['db_fetch_assoc']($messages_request);
if (!$message)
{
$smcFunc['db_free_result']($messages_request);
return false;
}

// $context['icon_sources'] says where each icon should come from - here we set up the ones which will always exist!
if (empty($context['icon_sources']))
{
$stable_icons = array('xx', 'thumbup', 'thumbdown', 'exclamation', 'question', 'lamp', 'smiley', 'angry', 'cheesy', 'grin', 'sad', 'wink', 'moved', 'recycled', 'wireless', 'clip');
$context['icon_sources'] = array();
foreach ($stable_icons as $icon)
$context['icon_sources'][$icon] = 'images_url';
}

// Message Icon Management... check the images exist.
if (empty($modSettings['messageIconChecks_disable']))
{
// If the current icon isn't known, then we need to do something...
if (!isset($context['icon_sources'][$message['icon']]))
$context['icon_sources'][$message['icon']] = file_exists($settings['theme_dir'] . '/images/post/' . $message['icon'] . '.gif') ? 'images_url' : 'default_images_url';
}
elseif (!isset($context['icon_sources'][$message['icon']]))
$context['icon_sources'][$message['icon']] = 'images_url';

// If you're a lazy bum, you probably didn't give a subject...
$message['subject'] = $message['subject'] != '' ? $message['subject'] : $txt['no_subject'];

// Are you allowed to remove at least a single reply?
$context['can_remove_post'] |= allowedTo('delete_own') && (empty($modSettings['edit_disable_time']) || $message['poster_time'] + $modSettings['edit_disable_time'] * 60 >= time()) && $message['id_member'] == $user_info['id'];

// If it couldn't load, or the user was a guest.... someday may be done with a guest table.
if (!loadMemberContext($message['id_member'], true))
{
// Notice this information isn't used anywhere else....
$memberContext[$message['id_member']]['name'] = $message['poster_name'];
$memberContext[$message['id_member']]['id'] = 0;
$memberContext[$message['id_member']]['group'] = $txt['guest_title'];
$memberContext[$message['id_member']]['link'] = $message['poster_name'];
$memberContext[$message['id_member']]['email'] = $message['poster_email'];
$memberContext[$message['id_member']]['show_email'] = showEmailAddress(true, 0);
$memberContext[$message['id_member']]['is_guest'] = true;
}
else
{
$memberContext[$message['id_member']]['can_view_profile'] = allowedTo('profile_view_any') || ($message['id_member'] == $user_info['id'] && allowedTo('profile_view_own'));
$memberContext[$message['id_member']]['is_topic_starter'] = $message['id_member'] == $context['topic_starter_id'];
$memberContext[$message['id_member']]['can_see_warning'] = !isset($context['disabled_fields']['warning_status']) && $memberContext[$message['id_member']]['warning_status'] && (($context['user']['can_mod'] || !empty($modSettings['warning_show'])) || ($memberContext[$message['id_member']]['id'] == $context['user']['id'] && !empty($modSettings['warning_show']) && $modSettings['warning_show'] == 1));
}

$memberContext[$message['id_member']]['ip'] = $message['poster_ip'];

// Do the censor thang.
censorText($message['body']);
censorText($message['subject']);

// Run BBC interpreter on the message.
$message['body'] = parse_bbc($message['body'], $message['smileys_enabled'], $message['id_msg']);

// Compose the memory eat- I mean message array.
$output = array(
'attachment' => loadAttachmentContext($message['id_msg']),
'alternate' => $counter % 2,
'id' => $message['id_msg'],
'href' => $scripturl . '?topic=' . $topic . '.msg' . $message['id_msg'] . '#msg' . $message['id_msg'],
'link' => '<a href="' . $scripturl . '?topic=' . $topic . '.msg' . $message['id_msg'] . '#msg' . $message['id_msg'] . '" rel="nofollow">' . $message['subject'] . '</a>',
'member' => &$memberContext[$message['id_member']],
'icon' => $message['icon'],
'icon_url' => $settings[$context['icon_sources'][$message['icon']]] . '/post/' . $message['icon'] . '.gif',
'subject' => $message['subject'],
'time' => timeformat($message['poster_time']),
'timestamp' => forum_time(true, $message['poster_time']),
'counter' => $counter,
'modified' => array(
'time' => timeformat($message['modified_time']),
'timestamp' => forum_time(true, $message['modified_time']),
'name' => $message['modified_name']
),
'body' => $message['body'],
'new' => empty($message['is_read']),
'approved' => $message['approved'],
'first_new' => isset($context['start_from']) && $context['start_from'] == $counter,
'is_ignored' => !empty($modSettings['enable_buddylist']) && !empty($options['posts_apply_ignore_list']) && in_array($message['id_member'], $context['user']['ignoreusers']),
'can_approve' => !$message['approved'] && $context['can_approve'],
'can_unapprove' => $message['approved'] && $context['can_approve'],
'can_modify' => (!$context['is_locked'] || allowedTo('moderate_board')) && (allowedTo('modify_any') || (allowedTo('modify_replies') && $context['user']['started']) || (allowedTo('modify_own') && $message['id_member'] == $user_info['id'] && (empty($modSettings['edit_disable_time']) || !$message['approved'] || $message['poster_time'] + $modSettings['edit_disable_time'] * 60 > time()))),
'can_remove' => allowedTo('delete_any') || (allowedTo('delete_replies') && $context['user']['started']) || (allowedTo('delete_own') && $message['id_member'] == $user_info['id'] && (empty($modSettings['edit_disable_time']) || $message['poster_time'] + $modSettings['edit_disable_time'] * 60 > time())),
'can_see_ip' => allowedTo('moderate_forum') || ($message['id_member'] == $user_info['id'] && !empty($user_info['id'])),
);

// Is this user the message author?
$output['is_message_author'] = $message['id_member'] == $user_info['id'];

if (empty($options['view_newest_first']))
$counter++;
else
$counter--;

return $output;
}


Arantor

We do normally ask for 24 hours between bumping because we're all volunteers and some of us do have better things to do than trying to help lots of people of an evening.

Thing is, I have no idea what code it is you want to add in the end of the post, so I can't really help until you provide that code.

prs

Quote from: Arantor on March 24, 2011, 04:52:50 AM
We do normally ask for 24 hours between bumping because we're all volunteers and some of us do have better things to do than trying to help lots of people of an evening.

Thing is, I have no idea what code it is you want to add in the end of the post, so I can't really help until you provide that code.

This is the code that i want to add in the end of the post:

<!-- AddThis Button BEGIN -->
<div class="addthis_toolbox addthis_default_style ">
<a href="http://www.addthis.com/bookmark.php?v=250&amp;pubid=businessspace" class="addthis_button_compact">Share</a>
<span class="addthis_separator">|</span>
<a class="addthis_button_preferred_1"></a>
<a class="addthis_button_preferred_2"></a>
<a class="addthis_button_preferred_3"></a>
<a class="addthis_button_preferred_4"></a>
</div>
<script type="text/javascript">var addthis_config = {"data_track_clickback":true};</script>
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=businessspace"></script>
<!-- AddThis Button END -->

Arantor

// Callback for the message display.
function prepareDisplayContext($reset = false)
{
global $settings, $txt, $modSettings, $scripturl, $options, $user_info, $smcFunc;
global $memberContext, $context, $messages_request, $topic, $attachments, $topicinfo;

static $counter = null;

// If the query returned false, bail.
if ($messages_request == false)
return false;

// Remember which message this is.  (ie. reply #83)
if ($counter === null || $reset)
$counter = empty($options['view_newest_first']) ? $context['start'] : $context['total_visible_posts'] - $context['start'];

// Start from the beginning...
if ($reset)
return @$smcFunc['db_data_seek']($messages_request, 0);

// Attempt to get the next message.
$message = $smcFunc['db_fetch_assoc']($messages_request);
if (!$message)
{
$smcFunc['db_free_result']($messages_request);
return false;
}

// $context['icon_sources'] says where each icon should come from - here we set up the ones which will always exist!
if (empty($context['icon_sources']))
{
$stable_icons = array('xx', 'thumbup', 'thumbdown', 'exclamation', 'question', 'lamp', 'smiley', 'angry', 'cheesy', 'grin', 'sad', 'wink', 'moved', 'recycled', 'wireless', 'clip');
$context['icon_sources'] = array();
foreach ($stable_icons as $icon)
$context['icon_sources'][$icon] = 'images_url';
}

// Message Icon Management... check the images exist.
if (empty($modSettings['messageIconChecks_disable']))
{
// If the current icon isn't known, then we need to do something...
if (!isset($context['icon_sources'][$message['icon']]))
$context['icon_sources'][$message['icon']] = file_exists($settings['theme_dir'] . '/images/post/' . $message['icon'] . '.gif') ? 'images_url' : 'default_images_url';
}
elseif (!isset($context['icon_sources'][$message['icon']]))
$context['icon_sources'][$message['icon']] = 'images_url';

// If you're a lazy bum, you probably didn't give a subject...
$message['subject'] = $message['subject'] != '' ? $message['subject'] : $txt['no_subject'];

// Are you allowed to remove at least a single reply?
$context['can_remove_post'] |= allowedTo('delete_own') && (empty($modSettings['edit_disable_time']) || $message['poster_time'] + $modSettings['edit_disable_time'] * 60 >= time()) && $message['id_member'] == $user_info['id'];

// If it couldn't load, or the user was a guest.... someday may be done with a guest table.
if (!loadMemberContext($message['id_member'], true))
{
// Notice this information isn't used anywhere else....
$memberContext[$message['id_member']]['name'] = $message['poster_name'];
$memberContext[$message['id_member']]['id'] = 0;
$memberContext[$message['id_member']]['group'] = $txt['guest_title'];
$memberContext[$message['id_member']]['link'] = $message['poster_name'];
$memberContext[$message['id_member']]['email'] = $message['poster_email'];
$memberContext[$message['id_member']]['show_email'] = showEmailAddress(true, 0);
$memberContext[$message['id_member']]['is_guest'] = true;
}
else
{
$memberContext[$message['id_member']]['can_view_profile'] = allowedTo('profile_view_any') || ($message['id_member'] == $user_info['id'] && allowedTo('profile_view_own'));
$memberContext[$message['id_member']]['is_topic_starter'] = $message['id_member'] == $context['topic_starter_id'];
$memberContext[$message['id_member']]['can_see_warning'] = !isset($context['disabled_fields']['warning_status']) && $memberContext[$message['id_member']]['warning_status'] && (($context['user']['can_mod'] || !empty($modSettings['warning_show'])) || ($memberContext[$message['id_member']]['id'] == $context['user']['id'] && !empty($modSettings['warning_show']) && $modSettings['warning_show'] == 1));
}

$memberContext[$message['id_member']]['ip'] = $message['poster_ip'];

// Do the censor thang.
censorText($message['body']);
censorText($message['subject']);

// Run BBC interpreter on the message.
$message['body'] = parse_bbc($message['body'], $message['smileys_enabled'], $message['id_msg']);

// Compose the memory eat- I mean message array.
$output = array(
'attachment' => loadAttachmentContext($message['id_msg']),
'alternate' => $counter % 2,
'id' => $message['id_msg'],
'href' => $scripturl . '?topic=' . $topic . '.msg' . $message['id_msg'] . '#msg' . $message['id_msg'],
'link' => '<a href="' . $scripturl . '?topic=' . $topic . '.msg' . $message['id_msg'] . '#msg' . $message['id_msg'] . '" rel="nofollow">' . $message['subject'] . '</a>',
'member' => &$memberContext[$message['id_member']],
'icon' => $message['icon'],
'icon_url' => $settings[$context['icon_sources'][$message['icon']]] . '/post/' . $message['icon'] . '.gif',
'subject' => $message['subject'],
'time' => timeformat($message['poster_time']),
'timestamp' => forum_time(true, $message['poster_time']),
'counter' => $counter,
'modified' => array(
'time' => timeformat($message['modified_time']),
'timestamp' => forum_time(true, $message['modified_time']),
'name' => $message['modified_name']
),
'body' => $message['body'] . (WIRELESS ? '' : '<!-- AddThis Button BEGIN -->
<div class="addthis_toolbox addthis_default_style ">
<a href="http://www.addthis.com/bookmark.php?v=250&amp;pubid=businessspace" class="addthis_button_compact">Share</a>
<span class="addthis_separator">|</span>
<a class="addthis_button_preferred_1"></a>
<a class="addthis_button_preferred_2"></a>
<a class="addthis_button_preferred_3"></a>
<a class="addthis_button_preferred_4"></a>
</div>';
<!-- AddThis Button END -->'),
'new' => empty($message['is_read']),
'approved' => $message['approved'],
'first_new' => isset($context['start_from']) && $context['start_from'] == $counter,
'is_ignored' => !empty($modSettings['enable_buddylist']) && !empty($options['posts_apply_ignore_list']) && in_array($message['id_member'], $context['user']['ignoreusers']),
'can_approve' => !$message['approved'] && $context['can_approve'],
'can_unapprove' => $message['approved'] && $context['can_approve'],
'can_modify' => (!$context['is_locked'] || allowedTo('moderate_board')) && (allowedTo('modify_any') || (allowedTo('modify_replies') && $context['user']['started']) || (allowedTo('modify_own') && $message['id_member'] == $user_info['id'] && (empty($modSettings['edit_disable_time']) || !$message['approved'] || $message['poster_time'] + $modSettings['edit_disable_time'] * 60 > time()))),
'can_remove' => allowedTo('delete_any') || (allowedTo('delete_replies') && $context['user']['started']) || (allowedTo('delete_own') && $message['id_member'] == $user_info['id'] && (empty($modSettings['edit_disable_time']) || $message['poster_time'] + $modSettings['edit_disable_time'] * 60 > time())),
'can_see_ip' => allowedTo('moderate_forum') || ($message['id_member'] == $user_info['id'] && !empty($user_info['id'])),
);

// Is this user the message author?
$output['is_message_author'] = $message['id_member'] == $user_info['id'];

if (empty($options['view_newest_first']))
$counter++;
else
$counter--;

return $output;
}


You also need to make the following additional edit to Display.php to avoid it causing errors.

Code (find) Select
// How much are we sticking on each page?

Code (before it, add this) Select
// AddThis
if (!WIRELESS)
{
if (empty($context['html_headers']))
$context['html_headers'] = '';
$context['html_headers'] .= '<script type="text/javascript">var addthis_config = {"data_track_clickback":true};</script>
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=businessspace"></script>';
}

prs

I am getting this error when i open forum post after putting and saving above codes:

Parse error: syntax error, unexpected ';' in /home/srigator/public_html/forum/Sources/Display.php on line 1219

1219 line is: </div>';

<a class="addthis_button_preferred_4"></a>
</div>';
<!-- AddThis Button END -->'),

Arantor

Sorry I made a typo

// Callback for the message display.
function prepareDisplayContext($reset = false)
{
global $settings, $txt, $modSettings, $scripturl, $options, $user_info, $smcFunc;
global $memberContext, $context, $messages_request, $topic, $attachments, $topicinfo;

static $counter = null;

// If the query returned false, bail.
if ($messages_request == false)
return false;

// Remember which message this is.  (ie. reply #83)
if ($counter === null || $reset)
$counter = empty($options['view_newest_first']) ? $context['start'] : $context['total_visible_posts'] - $context['start'];

// Start from the beginning...
if ($reset)
return @$smcFunc['db_data_seek']($messages_request, 0);

// Attempt to get the next message.
$message = $smcFunc['db_fetch_assoc']($messages_request);
if (!$message)
{
$smcFunc['db_free_result']($messages_request);
return false;
}

// $context['icon_sources'] says where each icon should come from - here we set up the ones which will always exist!
if (empty($context['icon_sources']))
{
$stable_icons = array('xx', 'thumbup', 'thumbdown', 'exclamation', 'question', 'lamp', 'smiley', 'angry', 'cheesy', 'grin', 'sad', 'wink', 'moved', 'recycled', 'wireless', 'clip');
$context['icon_sources'] = array();
foreach ($stable_icons as $icon)
$context['icon_sources'][$icon] = 'images_url';
}

// Message Icon Management... check the images exist.
if (empty($modSettings['messageIconChecks_disable']))
{
// If the current icon isn't known, then we need to do something...
if (!isset($context['icon_sources'][$message['icon']]))
$context['icon_sources'][$message['icon']] = file_exists($settings['theme_dir'] . '/images/post/' . $message['icon'] . '.gif') ? 'images_url' : 'default_images_url';
}
elseif (!isset($context['icon_sources'][$message['icon']]))
$context['icon_sources'][$message['icon']] = 'images_url';

// If you're a lazy bum, you probably didn't give a subject...
$message['subject'] = $message['subject'] != '' ? $message['subject'] : $txt['no_subject'];

// Are you allowed to remove at least a single reply?
$context['can_remove_post'] |= allowedTo('delete_own') && (empty($modSettings['edit_disable_time']) || $message['poster_time'] + $modSettings['edit_disable_time'] * 60 >= time()) && $message['id_member'] == $user_info['id'];

// If it couldn't load, or the user was a guest.... someday may be done with a guest table.
if (!loadMemberContext($message['id_member'], true))
{
// Notice this information isn't used anywhere else....
$memberContext[$message['id_member']]['name'] = $message['poster_name'];
$memberContext[$message['id_member']]['id'] = 0;
$memberContext[$message['id_member']]['group'] = $txt['guest_title'];
$memberContext[$message['id_member']]['link'] = $message['poster_name'];
$memberContext[$message['id_member']]['email'] = $message['poster_email'];
$memberContext[$message['id_member']]['show_email'] = showEmailAddress(true, 0);
$memberContext[$message['id_member']]['is_guest'] = true;
}
else
{
$memberContext[$message['id_member']]['can_view_profile'] = allowedTo('profile_view_any') || ($message['id_member'] == $user_info['id'] && allowedTo('profile_view_own'));
$memberContext[$message['id_member']]['is_topic_starter'] = $message['id_member'] == $context['topic_starter_id'];
$memberContext[$message['id_member']]['can_see_warning'] = !isset($context['disabled_fields']['warning_status']) && $memberContext[$message['id_member']]['warning_status'] && (($context['user']['can_mod'] || !empty($modSettings['warning_show'])) || ($memberContext[$message['id_member']]['id'] == $context['user']['id'] && !empty($modSettings['warning_show']) && $modSettings['warning_show'] == 1));
}

$memberContext[$message['id_member']]['ip'] = $message['poster_ip'];

// Do the censor thang.
censorText($message['body']);
censorText($message['subject']);

// Run BBC interpreter on the message.
$message['body'] = parse_bbc($message['body'], $message['smileys_enabled'], $message['id_msg']);

// Compose the memory eat- I mean message array.
$output = array(
'attachment' => loadAttachmentContext($message['id_msg']),
'alternate' => $counter % 2,
'id' => $message['id_msg'],
'href' => $scripturl . '?topic=' . $topic . '.msg' . $message['id_msg'] . '#msg' . $message['id_msg'],
'link' => '<a href="' . $scripturl . '?topic=' . $topic . '.msg' . $message['id_msg'] . '#msg' . $message['id_msg'] . '" rel="nofollow">' . $message['subject'] . '</a>',
'member' => &$memberContext[$message['id_member']],
'icon' => $message['icon'],
'icon_url' => $settings[$context['icon_sources'][$message['icon']]] . '/post/' . $message['icon'] . '.gif',
'subject' => $message['subject'],
'time' => timeformat($message['poster_time']),
'timestamp' => forum_time(true, $message['poster_time']),
'counter' => $counter,
'modified' => array(
'time' => timeformat($message['modified_time']),
'timestamp' => forum_time(true, $message['modified_time']),
'name' => $message['modified_name']
),
'body' => $message['body'] . (WIRELESS ? '' : '<!-- AddThis Button BEGIN -->
<div class="addthis_toolbox addthis_default_style ">
<a href="http://www.addthis.com/bookmark.php?v=250&amp;pubid=businessspace" class="addthis_button_compact">Share</a>
<span class="addthis_separator">|</span>
<a class="addthis_button_preferred_1"></a>
<a class="addthis_button_preferred_2"></a>
<a class="addthis_button_preferred_3"></a>
<a class="addthis_button_preferred_4"></a>
</div>
<!-- AddThis Button END -->'),
'new' => empty($message['is_read']),
'approved' => $message['approved'],
'first_new' => isset($context['start_from']) && $context['start_from'] == $counter,
'is_ignored' => !empty($modSettings['enable_buddylist']) && !empty($options['posts_apply_ignore_list']) && in_array($message['id_member'], $context['user']['ignoreusers']),
'can_approve' => !$message['approved'] && $context['can_approve'],
'can_unapprove' => $message['approved'] && $context['can_approve'],
'can_modify' => (!$context['is_locked'] || allowedTo('moderate_board')) && (allowedTo('modify_any') || (allowedTo('modify_replies') && $context['user']['started']) || (allowedTo('modify_own') && $message['id_member'] == $user_info['id'] && (empty($modSettings['edit_disable_time']) || !$message['approved'] || $message['poster_time'] + $modSettings['edit_disable_time'] * 60 > time()))),
'can_remove' => allowedTo('delete_any') || (allowedTo('delete_replies') && $context['user']['started']) || (allowedTo('delete_own') && $message['id_member'] == $user_info['id'] && (empty($modSettings['edit_disable_time']) || $message['poster_time'] + $modSettings['edit_disable_time'] * 60 > time())),
'can_see_ip' => allowedTo('moderate_forum') || ($message['id_member'] == $user_info['id'] && !empty($user_info['id'])),
);

// Is this user the message author?
$output['is_message_author'] = $message['id_member'] == $user_info['id'];

if (empty($options['view_newest_first']))
$counter++;
else
$counter--;

return $output;
}

prs

It is working fine now. Does it work for all themes or only for this theme?

Instead of spending this much of your time for a person, why do't you create mod for this. Once you create, it will be useful forever for many people and it is easy to use for us. Mod will save your time and our time. I think that the most people use addthis for sharing their content in SMF, if it has the right mod. What is your opinion?

Illori

Arantor is not creating mods for anyone that are supported anymore. if you want a mod request out of this please post in the proper board and someone may create one for you.

Arantor

QuoteOnce you create, it will be useful forever for many people and it is easy to use for us

Oh hell no. I will be inundated with 'can you make it do <x>' and 'it doesn't work with mod <x>, can you fix it'. Been there, done that. I wrote 70 mods, gave them all away because of that kind of hassle.

prs

Quote from: Arantor on March 24, 2011, 02:29:22 PM
QuoteOnce you create, it will be useful forever for many people and it is easy to use for us

Oh hell no. I will be inundated with 'can you make it do <x>' and 'it doesn't work with mod <x>, can you fix it'. Been there, done that. I wrote 70 mods, gave them all away because of that kind of hassle.

I did not understand x. I just said my opinion about creating mod. If you like to create the mod, create it.

You did not reply to this one: Does it work for all themes or only for this theme?

Arantor

Yes, it works for all themes.

What I meant is if I make a mod, I will, guaranteed, be asked or guilt tripped into adding more things to it, or be told it would be good if it did something else. I got fed up with people forgetting that I write mods in my spare time and that no-one has the right to tell me how to enjoy my spare time, yet so many did just that.

Advertisement: