Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 2.x > vBulletin 2.x Full Releases

Reply
 
Thread Tools
Details »»

Version: , by bira bira is offline
Developer Last Online: Jun 2013 Show Printable Version Email this Page

Version: 2.2.x Rating:
Released: 05-02-2001 Last Update: Never Installs: 101
 
No support by the author.

HACK UPDATED NOV 27TH 2001 - WORKS WITH ALL 2.X.X VERSIONS!

Since I was asked to make this available, here's my hack for downloading Private Messages (as many as you select) at once into a local txt file.

This is helpful if you need to clear out your PM folder(s) due to quota limitation, but don't want to lose those messages.

In effect, it works like an e-mail RFC archive.

Installation Instructions:

1. Open private.php.

Find:

Code:
  if ($delete!="") {
    $what="delete";
  }
Immediately AFTER it put:

PHP Code:
  if ($download!="") {
    
$what="download";
  } 
Find:

Code:
}

// ############################### start delete ###############################
Immediately ABOVE it (make sure you put it ABOVE the } ) put:

PHP Code:
if ($what=="download") {
    if (
is_array($privatemessage)) {
        
header("Content-disposition: filename=messages.txt");
        
header("Content-type: application/octet-stream");
        
header("Pragma: no-cache");
        
header("Expires: 0");

          while(list(
$key,$val)=each($privatemessage)) {
            
$downloads=$DB_site->query_first("SELECT touserid,fromuserid,dateline,title,message FROM privatemessage WHERE privatemessageid='$key' AND userid=$bbuserinfo[userid]");
            
$tousername=$DB_site->query_first("SELECT username FROM user WHERE userid='$downloads[touserid]'");
            
$fromusername=$DB_site->query_first("SELECT username FROM user WHERE userid='$downloads[fromuserid]'");
            
$msgdt vbdate($dateformat,$downloads[dateline]);
            
$msgtm vbdate($timeformat,$downloads[dateline]);
            
$wordwrap wordwrap($downloads[message],75,"\r\n");
            
            print(
"Date/Time Sent: $msgdt$msgtm\r\n");
            print(
"From: $fromusername[username]\r\n");
            print(
"To: $tousername[username]\r\n");
            print(
"Subject: $downloads[title]\r\n\r\n");
            print(
"$wordwrap\r\n");
            print(
"==========================================================================\r\n\r\n\r\n");


        } 
//end while
    
    
} else {
      eval(
"standarderror(\"".gettemplate("error_pmnoselected")."\");");
      exit;
   }

Note for Foreign Users: replace the words 'Date/Time Sent', 'From', 'To', 'Subject' in the above code with whatever wording in your language that suits you.

Save file and upload.

2. Edit template privfolder.

Find:

Code:
$massforwardlink
Immediately after OR before it (it does not matter), put:

Code:
or <input type="submit" class="bginput2" name="download" value="Download" style="background-color:#606096;color:#FFF788;font-size:10px;font-weight:bold">
Note for Foreign Users: replace the word "or" and the value "Download" with whatever wording in your language that suits you.


That's it!

Usage: select one or more messages in one of your Private Messages folder and click on "Download". You will be prompted to save messages.txt on your hard drive (a Windows filename & folder selection dialogue will pop up).

Cheers,

Bira

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #32  
Old 11-13-2001, 08:08 AM
Sweet Evil Sweet Evil is offline
 
Join Date: Nov 2001
Posts: 57
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by smelialichu
This is a great hack, just one problem though. When i click on download it displays the pm's in my browser and doesn't download it. i use IE 5.01 none of the other people on the board have reported the problem, ideas? I realise the problem is most likely at my end.


Same Problem... (IE 5.0)
Reply With Quote
  #33  
Old 11-13-2001, 08:17 AM
Sweet Evil Sweet Evil is offline
 
Join Date: Nov 2001
Posts: 57
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by Zarkov
OK look for this code in private.php
PHP Code:
if (is_array($privatemessage)) { 
header("Content-type: application/octet-stream"); 
header("Content-disposition: attachment; filename=messages.txt"); 
header("Pragma: no-cache"); 
header("Expires: 0"); 
and replace it with
PHP Code:
if (is_array($privatemessage)) { 
header("Content-disposition: attachment; filename=messages.txt"); 
header("Content-type: uknown/unknown"); 
header("Pragma: no-cache"); 
header("Expires: 0"); 

Dont forget to change the filename=messages.txt to what ever you want to call the downloaded file.
Thanks!.. this fixed the problem .. now it is a download..
Reply With Quote
  #34  
Old 11-13-2001, 08:28 AM
Sweet Evil Sweet Evil is offline
 
Join Date: Nov 2001
Posts: 57
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by Amasov
I am running this hack on my 2.2.0 an it works perfectly (thanks @Bira, great hack)

Only one question:

How do I change the size of the "Download"-Button ??
(It's greater than the others, but I used the same style like the others)..

Thanks.

@ezdreamer:
Actually you did something wrong!

@Alien:
I ran this hack on RC2, 2.0.1, 2.0.2, 2.0.3

Replace:
PHP Code:
or <input type="submit" name="download" value="Download"
With:
PHP Code:
    or <input type="submit" class="bginput" name="download" value="Download" style="background-color:#336D95;color:#000000;font-size:10px;font-weight:bold"
But if you already made it look like the rest... (style=")

Then you just need to
Replace:
PHP Code:
or <input type="submit" name="download" value="Download" 
With:
PHP Code:
or <input type="submit" class="bginput" name="download" value="Download" 
Reply With Quote
  #35  
Old 11-13-2001, 09:22 AM
Amasov's Avatar
Amasov Amasov is offline
 
Join Date: Nov 2001
Location: Hamburg (GE)
Posts: 29
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It was the

Code:
class="bginput"
Thanks a lot, Sweet Evil
Reply With Quote
  #36  
Old 11-13-2001, 09:35 AM
Sweet Evil Sweet Evil is offline
 
Join Date: Nov 2001
Posts: 57
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yea I was just trying to make it sound tech like.. (lol)

Just saying add (class="bginput") after (type="submit") did not sound very tech like..

Anyhow NP
Reply With Quote
  #37  
Old 11-13-2001, 07:15 PM
Alien's Avatar
Alien Alien is offline
 
Join Date: Oct 2001
Posts: 827
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for your responses everyone.

Installed, and working!
Reply With Quote
  #38  
Old 11-14-2001, 06:14 AM
ezdreamer ezdreamer is offline
 
Join Date: Nov 2001
Posts: 10
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

In private.php

Find code:

eval("standardredirect(\"".gettemplate("redirect_p mdelete")."\",\"private.php?s=$session[sessionhash]&folderid=$thisfolder\");");
}

But instead of the above I find this in private.php:

eval("standardredirect(\"".gettemplate("redirect_p mdelete")."\",\"private.php?s=$session[sessionhash]&folderid=".intval($thisfolder)."\");");
}

What do I do now?
Reply With Quote
  #39  
Old 11-14-2001, 09:04 AM
jamie jamie is offline
 
Join Date: Oct 2001
Posts: 30
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

now now where can i get the hack for vb 2.0.3?

has it been deleted?
Reply With Quote
  #40  
Old 11-25-2001, 10:00 PM
jam583 jam583 is offline
 
Join Date: Nov 2001
Location: New York City
Posts: 28
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

After adding the new code:

if (is_array($privatemessage)) {
header("Content-disposition: attachment; filename=messages.txt");
header("Content-type: uknown/unknown");
header("Pragma: no-cache");
header("Expires: 0");

I still get a white screeen
Reply With Quote
  #41  
Old 11-26-2001, 04:24 AM
JJR512's Avatar
JJR512 JJR512 is offline
 
Join Date: Oct 2001
Location: Glen Burnie, MD, USA
Posts: 710
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by ezdreamer
In private.php

Find code:

eval("standardredirect(\"".gettemplate("redirect_p mdelete")."\",\"private.php?s=$session[sessionhash]&folderid=$thisfolder\");");
}

But instead of the above I find this in private.php:

eval("standardredirect(\"".gettemplate("redirect_p mdelete")."\",\"private.php?s=$session[sessionhash]&folderid=".intval($thisfolder)."\");");
}

What do I do now?
For 2.2.1, find this:
PHP Code:
    eval("standardredirect(\"".gettemplate("redirect_pmdelete")."\",\"private.php?s=$session[sessionhash]&folderid=".intval($thisfolder)."\");");
  } 
And make that replacement after that.

Note: Do NOT make the replacement after this:
PHP Code:
  eval("standardredirect(\"".gettemplate("redirect_pmdelete")."\",\"private.php?s=$session[sessionhash]&folderid=".intval($folderid)."\");");
#end dodelete 
Which is very similar and appears a few lines further down.
Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 06:43 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04402 seconds
  • Memory Usage 2,348KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (5)bbcode_code
  • (10)bbcode_php
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete