Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons

Reply
 
Thread Tools
vBulletin Mail System Details »»
vBulletin Mail System
Version: 2.5.2p, by filburt1 filburt1 is offline
Developer Last Online: May 2007 Show Printable Version Email this Page

Version: 3.5.4 Rating:
Released: 09-04-2006 Last Update: Never Installs: 47
DB Changes Uses Plugins Template Edits
Additional Files Is in Beta Stage  
No support by the author.

[high]BEFORE YOU READ FURTHER, DO NOT INSTALL THIS MODIFICATION IN ITS PRESENT STATE. READ THE RELEVANT SECTIONS OF THIS POST FIRST IF YOU WISH TO INSTALL VBMS. I AM NOT OFFICIALLY SUPPORTING THIS MODIFICATION.[/high]

Note: For now, this thread will serve for all support questions. Obviously, the thread is going to get very long, very soon, and quickly lose any manageability. I hope to have a Premum Modification forum set up for vBMS, depending on whether the administration here supports it.

The vBulletin Mail System is now a free modification, instead of $40 to $48 (depending on the license). All features of the developer license (notes, etc.) are public as well. These files will be released shortly; they are not available yet.

For product information: http://www.webdesignforums.net/vbms/ .

What's attached to this thread?

The latest development version of vBMS, designed for 3.5 (incompatible with 3.0 in many ways, incompatible with 3.6 in a handful of ways). It is not to be installed in a live environment under any conditions.

What does this mean?

The forum at http://www.webdesignforums.net/vbms/forum/ will no longer serve as a support forum. If you have questions, you should do one of two things:
  • Post in this thread ONLY. All technical, historical, and nearly all other threads should be posted here. In all likelyhood, I will not response to technical questions in this thread, and I will not respond to such requests via private messages or other means. By posting in this thread, tens of thousands of other users can help you in addition to me (provided they don't get there first and I have the time).
  • If the question is personal for me only--no development questions--then send me a private message. Send the private message only through my site (http://www.webdesignforums.net/), not this site, so I can easily look up your customer history. Effectively, this involves billing only, or other licensing questions.
What about those who purchased the product?

When you bought vBMS, you were paying for the stable 3.0 release that has been around for over a year, and a 2.3.x release that has been around for much longer (since 2003). You still have access to those products (they will be released in the new forum). However, your license has been inherited to a standard open-source license: you may now install vBMS on as many domains and forums as you like, as well as freely distribute it.

Your input has also allowed a stable 3.5 version to be very close to completion. The expertise of the tens of thousands of coders who are now exposed to vBMS--which includes the developers of vBulletin themselves--will further improve the product to create a stable and full-featured product for vBulletin 3.5, 3.6, and beyond.

If your intention was to buy a 3.5 release, please note that it was clearly and repeatedly mentioned that a 3.5 version was only under development, not readily available, and that the version available was specifically not suitable for live use. I apologize if you thought this was different as I attempted to make it abundantly clear, including specifically telling people not to buy vBMS if they are running vBulletin 3.5 or later.

However, with this transition to open source, you will still get what you paid for, and faster: a stable 3.5/3.6 release.

Why go open-source?

To be honest, it is not fair to those who bought a vBMS license but have upgraded their installation of vBulletin to beyond 3.0. This will allow a much faster development cycle with support from many vBulletin modification developers. There are secondary reasons as well:
  • Time. vBMS is well over 16,000 lines of code. Managing a product of that scope is simply beyond the several hours free I have each week to develop the product. Also, with Jelsoft churning out the vBulletin versions, developing a product that is dependent on frequent changes is extremely difficult. That is not to say that frequent new versions of vBulletin is a bad thing; it simply makes development difficult.
  • Product scale. As mentioned above, vBMS is huge--far bigger than the majority of vBMS additions and even bigger than some of the version transitions of vBulletin itself.
  • Reverse engineering vBulletin. As a factor of the two above, I am finding it increasingly difficult to develop for vBulletin. While I applaud Jelsoft for offering a product and specifically not mangling, encrypting, or otherwise prohibiting the viewing of its source (obviously, for customers only), there is still much to be done to favor strongly to developers who build products exclusively for their product. Others who feel catoring towards developers can help Jelsoft can see my request for a "developer license" of vBulletin.
  • Fraud. As many people know, online software vendors are among the worst hit for credit card fraud, and it's extremely damaging: even if a thousand copies of a piece of software are sold, it only takes one single fraudulent order to leak the product, voiding, in all honesty, the majority of future orders. After putting a great deal of time into vBMS to see it stolen so brazenly, it demoralized me.
  • Bad experiences. I have appealed several times to the community to hire additional developers, but the developers I hand-picked did not work out on these occasions. So far, none of the experiences has sped up development time, so paid outside help has not worked out.
  • Personal reasons. I have changed jobs, taken on part-time work (I'm still poor), and even had a death in the family break up my work.
But the ultimate reason: I want vBMS to be available for all current versions of vBulletin so those who paid good money do not feel cheated.

What can and can't I do with an open-source vBMS in terms of licensing?

You can:
  • Distribute vBMS to anybody you like.
  • Modify vBMS to do whatever you like (excluding changing copyright notices), and then claim the changes as your own.
  • Remove mentions of vBMS, the "vBulletin Mail System", or other branding.
  • Develop special distributions of vBMS that you have extensively modified, and distribute those changes as a package
  • Sell any components of vBMS that you have directly created (this is allowed, but discouraged). Only the components themselves may be sold, not the entire package with your modifications included.
You cannot:
  • Advertise any of your modifications that you may be selling at vBulletin.org.
  • Use vBMS for any illegal purposes, including use vBMS on a forum without an active vBulletin license.
  • Modify vBMS to do whatever you like, and then claim the entire product as your own.
  • Remove mentions of vBMS, the "vBulletin Mail System", or other branding, and replace them with others that imply you exclusively developed the product.
  • Sell any components of vBMS that the product originally contained or others have freely developed.
  • Sell the product as a whole, including a modified product.
What technical skills do I need to understand how vBMS works?

You need the usual vBulletin skills in general. This means PHP, MySQL, HTML, and CSS. You also should have a working knowledge of XML.

You'll also need to familiarize yourself with how MIME headers in e-mails work. If you want to modify how vBMS receives and routes mail, you'll need to understand the beast that is the imap library: http://www.php.net/imap . The imap library is only used to receive messages; sending messages has no dependency on imap.

Will you help with development?

I'll offer simple assistance in whatever free time I have--and I'll only do it publicly in the new forum. I will not write extensive parts of code for you or talk to you privately about vBMS. I will enjoy answering questions about how vBMS works at a high-level, and then you can see the inner workings to see how it's actually implemented.

So can vBMS actually be installed?

The version of vBMS that has been uploaded is the latest development version. It can be installed on a test forum, but there are several critical bugs that need to be resolved. You can browse the old support forums (http://www.webdesignforums.net/vbms/) for an overview of those bugs. I have a suspicion that they are simple fixes to you, the community with experience with vBulletin.

What is the first goal of those movement to open-source?

I wish to have a stable version of vBMS with little to no known bugs available for vBulletin 3.5 and 3.6 as soon as possible to appease past and present customers. Feature additions should come later; compatibility and bug fixes should be the utmost priority. When the stable version for 3.5 and 3.6 is available, then new features can be added. At the old forums, there is a list of feature requests, many of which have been addressed.

What will be my role in this?

As a user experienced with vBulletin development, both you and others will benefit from a stable 3.5/3.6 version of vBMS. That should be the priority. Feature additions, visual tweaks, etc. come later. Compatibility and just making it work completely with the features already present is the most important.

What remains to be done for a transition to open-source?

The version of vBMS attached to this thread is the latest one to which customers had access. It is still littered with copyright information and warnings about piracy. While the copyright information is still valid and will perpetually be valid, you can obviously ignore the piracy warnings. A proper version will be uploaded within several days that is fully suitable for open-source use.

Remember, this means that the piracy warning is no longer applicable, but the copyright information is applicable and must never, under any circumstances, be removed.

Any last thoughts?

As with any modification, back up your site files, but more importantly, your database, before proceeding. vBMS makes a significant number of alterations and new tables.

Show Your Support

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

Comments
  #282  
Old 11-20-2006, 01:06 PM
DaNIEL MeNTED DaNIEL MeNTED is offline
 
Join Date: Sep 2006
Posts: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

error when "rebuild quota" -

PHP Code:
Invalid SQL:
DELETE FROM vb_vbms_attachment
            USING vb_vbms_attachment a
            LEFT JOIN vb_vbms_message
            ON a
.messageid vb_vbms_message.messageid
            WHERE vb_vbms_message
.messageid IS NULL;

MySQL Error  Unknown table 'vb_vbms_attachment' in MULTI DELETE
Error Number 
1109 
As far as default aliases... Is there a way to populate the alias column with the members' username - dropping any illegal characters and changing spaces to _ or . ??

Also ... I'd love to be able to see the alias in the AdminCP user properties.
Reply With Quote
  #283  
Old 11-20-2006, 02:05 PM
DaNIEL MeNTED DaNIEL MeNTED is offline
 
Join Date: Sep 2006
Posts: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Lionel View Post
Try to run this in your browser and post the results if any (replace with your values)

http://www.yoursite.com/forums/vbms_checkmail.php
Is there a reason we can't create a cron job for vbms_checkmail.php instead of using the plugins?

I just think a cron is more "standard" as to the way most hacks run. Or is there a reason its in the plugins?
Reply With Quote
  #284  
Old 11-20-2006, 03:14 PM
dodgeboard.com's Avatar
dodgeboard.com dodgeboard.com is offline
 
Join Date: Nov 2005
Posts: 174
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by DaNIEL MeNTED View Post
error when "rebuild quota" -

PHP Code:
Invalid SQL:
DELETE FROM vb_vbms_attachment
            USING vb_vbms_attachment a
            LEFT JOIN vb_vbms_message
            ON a
.messageid vb_vbms_message.messageid
            WHERE vb_vbms_message
.messageid IS NULL;

MySQL Error  Unknown table 'vb_vbms_attachment' in MULTI DELETE
Error Number 
1109 
As far as default aliases... Is there a way to populate the alias column with the members' username - dropping any illegal characters and changing spaces to _ or . ??

Also ... I'd love to be able to see the alias in the AdminCP user properties.

I had this problem too. Lionel corrected it by manually creating the table.
Reply With Quote
  #285  
Old 11-20-2006, 04:08 PM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

change

Quote:
DELETE FROM vb_vbms_attachment
to

Quote:
DELETE FROM vb_vbms_attachment a
Reply With Quote
  #286  
Old 11-20-2006, 04:11 PM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by DaNIEL MeNTED View Post
Is there a reason we can't create a cron job for vbms_checkmail.php instead of using the plugins?

I just think a cron is more "standard" as to the way most hacks run. Or is there a reason its in the plugins?
the way it's setup, it is the same as a cronjob
Reply With Quote
  #287  
Old 11-20-2006, 05:03 PM
DaNIEL MeNTED DaNIEL MeNTED is offline
 
Join Date: Sep 2006
Posts: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I've imported all the templates and SQL queries into the product...

I've added uninstall code that removes all the tables.

I have also added the following:

ON INSTALL - the ALIAS will be populated for all users with the following in mind:
  • all usernames are converted to lowercase.
  • all characters other than a-z, 0-9, and . (period) are stripped from their username.
  • before an alias is added it is checked against all other aliases in the database, if the alias exists it adds a 1, 2, 3, n. to the end of the alias as required.
Please have a look at this code and tell me if it can be improved - like I said I'm not a coder.

PHP Code:
$allusers $vbulletin->db->query("SELECT * FROM  " TABLE_PREFIX "user"); 

while(
$row mysql_fetch_array$allusers )) {
 
$suffix=1;
 
$username $row['username'];
 
$username strtolower($username);
 
$newalias preg_replace('/\s/''.'$username);
 
$newalias preg_replace('@[^a-z0-9.]@'''$newalias);
 
$dupecheck $vbulletin->db->query("SELECT * FROM  " TABLE_PREFIX "user"); 
 while(
$dupe mysql_fetch_array$dupecheck)) {
  
$existing $dupe['vbms_alias'];
  
$currentuser $dupe['username'];
  if (
$newalias == $existing) {
   if (
$user != $currentuser && $suffix == 1) {
    
$newalias $newalias $suffix++;
   } elseif (
$user != $currentuser && $suffix 1) {
   
$newalias rtrim($newalias"1..9");
   
$newalias $newalias $suffix++;
   } else {
    
$newalias $existing;
   }
  }
 }
$vbulletin->db->query("UPDATE " TABLE_PREFIX "user SET `vbms_alias` = '" $newalias "' WHERE " TABLE_PREFIX 
"user.username ='" $username "' LIMIT 1");

I would rather remove this from the install and modify it into 2 plugins ... one that could be run from the admin CP (Populate Aliases! button) and one that runs as part of a new user registration (after the confirm their address).

Also, I'm not sure how to add the alias fields to the user view in the admin CP... anyone want to point me in that direction?

Oh .... I did change the product version to 2.53 because of the differences in the XML I made.

EDITED TO ASK:

Are there any other changes that need to be made to "mail enable" a user?
Reply With Quote
  #288  
Old 11-20-2006, 06:31 PM
DaNIEL MeNTED DaNIEL MeNTED is offline
 
Join Date: Sep 2006
Posts: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Lionel View Post
the way it's setup, it is the same as a cronjob
Bear with me... since I'm still trying to decipher much of this. But it looks like the way it is setup now requires someone to load a page after the timeout has expired to force an update.

Assuming you have a few hours of downtime when no one is surfing your forum that first person is going to get dinged with a longer wait based on the size of the email that needs to get pulled down.

Can the plugin code just be copied to a new cronjob.php file or would I need to do anything else?
Reply With Quote
  #289  
Old 11-20-2006, 06:34 PM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by DaNIEL MeNTED View Post
But it looks like the way it is setup now requires someone to load a page after the timeout has expired to force an update.
That's the way that vb cron system is setup. For all crons to work, anyone of them, a page must be loaded.

On another good note, I just learned how to make a product. Since you made one already, I'll move to my next project, which will be vbstocks, a stock market simulator using real data with points money to buy them
Reply With Quote
  #290  
Old 11-20-2006, 06:45 PM
DaNIEL MeNTED DaNIEL MeNTED is offline
 
Join Date: Sep 2006
Posts: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Lionel View Post
That's the way that vb cron system is setup. For all crons to work, anyone of them, a page must be loaded.
Ahhh... gotcha!

Quote:
Originally Posted by Lionel View Post
On another good note, I just learned how to make a product. Since you made one already, I'll move to my next project, which will be vbstocks, a stock market simulator using real data with points money to buy them
Haha. Lets make sure all the bugs are ironed out of this one first!

Should I have any options in my userCP after installing or are there manual template changes?
Reply With Quote
  #291  
Old 11-20-2006, 06:55 PM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by DaNIEL MeNTED View Post
Should I have any options in my userCP after installing or are there manual template changes?
What I did was adding them in a dropdown in navbar.
My setup is different as I splitted Quick Links and put some items in the User CP navbar link where they belong. So I would simply recommend to add a new mail link in navbar
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 07:05 AM.


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.04963 seconds
  • Memory Usage 2,357KB
  • 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
  • (3)bbcode_php
  • (10)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
  • (2)pagenav_pagelinkrel
  • (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