PDA

View Full Version : Display vBMS status in vBAdvanced CMPS


Jaxx
06-09-2005, 10:00 PM
*Note*This has been tested in vBAdvanced v1.x. As I do not have 2.0 installed, I cannot verify if it works. I decided to post it here as I had someone ask where this was and I only had it over at the vBa website.

This module for vBAdvanced CMPS will give you a block that shows your users how many total and new emails they have along with a link to the vBMS portion of your site. It will also remove the pop notification at the top of the site when new email arrives.

Name: CMPS vBMS E-Mail Block

Templates to edit: 3 Total (1 created)

Time to install: Less then 5 minutes.

I started messing around because some users and myself didn't like the actual block that popped up in the header when you recieved e-mail. So with the help of Filburt and Phlogiston, was able to get it up and running.

This is my first attempt at actually creating something of this sort, so be easy on me. :p

Its actually quite easy to set up. You will, of course, need vBulletin's Mail System (http://www.webdesignforums.net/vbms/).

Step 1

Create a new vBA CMPS module with the following info:

Module Title: vbms
File to Include: None
Template to Include: vbms

Do not activate it yet.

Step 2

Goto your Style Manager and create a new template titled:

adv_portal_vbms

Paste the following code:


<!-- vbms module -->

<if condition="$vboptions['vbms_enabled']">
<table align="center" border="0" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" class="tborder" width="100%">
<thead>
<tr>
<td class="tcat"><span class="smallfont"><strong>$vba_options[portal_blockbullet] <a href="$vboptions/vbms.php?$session[sessionurl]">vB WebMail</a></strong></span>
</td>
</tr>
</thead>
<tr>
<td class="$getbgrow" width="100%">
<b>
<if condition="$vbms_newmessages['newcount'] == 1">
$vbphrase[vbms_one_unread_message]
<else />
<phrase 1="$vbms_newmessages[newcount]">$vbphrase[vbms_x_unread_messages]</phrase>
</if>

</b>
<br />
<br />
You have $messagecount emails total.
<br />
<br />
<span class="smallfont"><phrase 1="$vboptions[bburl]/vbms.php?$session[sessionurl]">$vbphrase[vbms_to_read_your_email]</phrase></span>
</td>
</tr>
</table>
<br />
</if>

<!-- End vbms module -->

You may want to edit vB WebMail for your own title as you see fit.

Save it.

Step 3

Open your phpinclude_start file.

Find (should be top line):


require_once("./includes/vbms_frontend_init.php");

Below paste:


$result = $DB_site->query_first("SELECT COUNT(messageid) AS messagecount FROM " . TABLE_PREFIX . "vbms_message WHERE userid = " . $bbuserinfo['userid']);
$messagecount = $result['messagecount'];

Save it.

Step 4

This step will get rid of the table that popups at the top of the site telling you you have new mail. If you want to keep it, skip this step.

Now open your header template.

Remove everything between (including the comments):


<!-- vBMS new mail notification -->

and

<!-- / vBMS new mail notification -->

Save it.

Step 5

Go back to the vbms module you created earlier and now turn it on. Check your site, you should now see the new block where you placed it.

If you do not see a # in the 'You have # messages that have not been read', check your require_once path and the code you put in at step 3.

That's it.

[B]*Advanced Users*

Phlogiston pointed out to me earlier today that the queries in step 3 could also be placed in the vbms_frontend_init.php file, thereby allowing you to expand upon it to get further info, such as folders, subject previews, etc. So if you want, you can instead place the queries in that file just above the ?> closing tag.

Once again, I wanted to give credit and thanks to Filburt (http://www.webdesignforums.net/vbms/) his help and patience.

And to my co-author who made me realize how stupid some mistakes can really be, Phlogiston (http://www.spoiltcat.com/member.php?u=5).

Jaxx
06-10-2005, 07:34 AM
I will try to support this as best as I can considering this is pretty much my first mod I have written.

yoyoyoyo
07-15-2005, 02:42 AM
Thanks! I was wondering how to do this myself.

trancetopia
07-23-2005, 06:32 PM
Hi Jaxx,

Are you able to support this mod? There are a couple of things i've noticed and would like:

[1] The message You have messages that have not been read. always appears regardless of if you have any unread messages or not. Even appears if you don't have any mail at all.

[2] Instead of giving the total number of messages, can this be changed to a total of new messages only.

Hope you can help.

Paul

Jaxx
07-23-2005, 10:07 PM
Hm. I will have to look into that.

Its been a number of months since this was released and don't recall seeing that.

It should actuall look like the attachment when you have new mail.

It should say 0 when there is no new mail.

Jaxx
07-23-2005, 10:20 PM
Ok, looking over my code on my site, its exactly as described above.

Only difference is I opted to have mine in the vbms_frontend_init.php file. Just do step 3 in the named file and paste it above the closing ?>

Let me know.

trancetopia
07-24-2005, 07:49 AM
Hi Jaxx,

Big thanks for helping me with this.

I've made the change to vbms_frontend_init.php but I still get the same problem.

The 1st attachment shows me what I have when I have 3 read messages.

I have sent myself an email and in the vbms.php screen it show I have a new mail to bring it to a total of 4. The second attachment shows the I have 4 emails but no change to first text in the block.

Any ideas? Just to note I am using v2 of the vbms.

Thanks.

Jaxx
08-12-2005, 05:24 PM
Hm. V2, i think i'm still on v1, never got an email about any releases after he said he was going to stop.

yoyoyoyo
08-12-2005, 06:25 PM
Hm. V2, i think i'm still on v1, never got an email about any releases after he said he was going to stop.me neither- there was an update? 2.0 has been out for awhile... 2.0.1 is what we have been waiting for, and the last I heard the new developer that had been brought onboard didn't work out, and there hasn't been any further development on vbms due to filburt1 being upset about people warezing his work.