Attachment countdown timer (like yousendit & rapidshare)

This was useful 4 me

  • YES

    Votes: 0 0.0%
  • NO

    Votes: 0 0.0%

  • Total voters
    0

hariprasad

New Member
Show your attachments for guests (or any usergroup you like) in a javascript window with a niftly little countdown timer, sort of like yousendit or rapidshare. You can also place ads in this window, it's perfect if you have a board with many attachments.

NOTE: THIS WILL ONLY WORK WITH 3.6.0 FINAL AND WILL FAIL IN ALL EARLIER VERSIONS, BOTH RC'S AND BETAS!
^ Don't mean to yell but this is very important :)


Update: (1.2.0) Due to reported bugs this needed a complete rewrite. To upgrade, re-import the product-attachment_window.xml and select overwriet. Then replace the postbit_attachment template.

vBseo fix, thanks hornstar1337 and the vbseo team for helping out with this.

Modified the display in the thread to appear just as it does for registered users, also applied this to the popup window.

To upgrade to this version, run the installer again and select overwrite. Then replace the postbit_attachment template.

vBseo Fix. The problem was with the google analytics code. There was 2 ways to fix this, either disable the google analytics code, or replace this code from within postbit_attachment
Code:
<a href="javascript:history.go(0)"
to
Code:
<a rel="novbseo" href="javascript:history.go(0)"
and to ensure the vbseo config file is set to 1 (allow) for rel novbseo

Install time: 2 minutes

Product installer
4 New files
5 New templates (added by plugin)
1 Template edit

Upload showfile.php and showfile_redirect to your /forumroot and upload class_showfile.php and class_showfile_redirect.php to forumroot/includes/

Import product-attachment_window.xml by going to Plugins & Products > Manage Products [Add/Import Product]

Template edit

In postbit_attachment

replace all with this: (note that you can add any additional groups to the "$bbuserinfo['usergroupid'], array" that you want this to show up for)

Code:
<if condition="in_array($bbuserinfo['usergroupid'], array(1, 3))">

<script language="JavaScript" type="text/JavaScript">
<!--
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
//-->
</script>
<img class="inlineimg" src="$stylevar[imgdir_attach]/$attachment[attachmentextension].gif">
<a href="javascript:history.go(0)" onClick="MM_openBrWindow('showfile_redirect.php?$session[sessionurl]p=$post[postid]&postcount=$post[postcount]','','scrollbars=yes,resizable=yes,width=470,height=300')"><strong>$attachment[filename]</strong></a>
 ($attachment[filesize]<if condition="$show['views']"><if condition="$show['views']"></if>, <phrase 1="$attachment[counter]">$vbphrase[x_views]</phrase></if>)

<else />
<tr>
	<td><img class="inlineimg" src="$stylevar[imgdir_attach]/$attachment[attachmentextension].gif" alt="<phrase 1="$attachment[attachmentextension]">$vbphrase[file_type_x]</phrase>" width="16" height="16" border="0" style="vertical-align:baseline" /></td>
	<td><a href="attachment.php?$session[sessionurl]attachmentid=$attachment[attachmentid]&d=$attachment[dateline]"<if condition="$show['newwindow']"> target="_blank"</if>>$attachment[filename]</a> ($attachment[filesize]<if condition="$show['views']">, <phrase 1="$attachment[counter]">$vbphrase[x_views]</phrase></if>)</td>
</tr>
</if>

In template SHOWTHREAD_FILE and showfile_redirect find this and change it to your site, or remove if you don't want to suggest that they register
Code:
<div align="center"><a href="http://www.YOURSITE.COM/FORUM/register.php" target="_blank">Registered Users</a> do not have to wait.</div>

Tweak to your setup:

In template SHOWTHREAD_FILE and showfile_redirect find this and place your ads there (there are two instances)
Code:
<!-- START AD CODE -->

<!-- END AD CODE -->

To change the size of the popup window, in template postbit_attachment find this and change to your liking:
Code:
scrollbars=yes,resizable=yes,width=470,height=300

To change the countdown time, look in the showfile_redirect template for:
Code:
var waitTime=10;
and
Code:
var blocksize=(barwidth-2)/waitTime/10;

As always, enjoy and please click the install button if you use it :)
 
Screen shot added

window.gif
 
Back
Top