Go Back   vb.org Archive > vBulletin Modifications > Archive > Modification Graveyard

Reply
 
Thread Tools
[AJAX] vB Pager 3.0.4 Details »»
[AJAX] vB Pager 3.0.4
Version: 3.0.4, by uae uae is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Category: Major Additions - Version: 3.5.4 Rating:
Released: 01-05-2006 Last Update: 03-05-2006 Installs: 800
DB Changes Uses Plugins Template Edits
Re-useable Code Additional Files  
No support by the author.

This modification currently contains a vulnerability. You are hereby advised to uninstall this modification until such time that the author provides a fix.
- vBulletin.org Staff


[AJAX] vB Pager 3.0.4


Hack Version: 3.0.4
vB-version: 3.5.x
Developer: WwW.UAEWEB.CoM
Install-difficulty: Few minutes!

Introduction:
vB Pager is a text-based instant messaging system over your community between members. Users can exchange short & quick messages amongst each other. Unlike the regular private messaging system, the paged user is guaranteed to read your message & reply to it (if you choose this option) instantly & easily.
  • Features:
    • Uses AJAX Technology to Send pager messages / Get pager messages / Add & Remove a member to buddy list / Add & Remove a member from Ignore list. (No Refresh Required)
  • Main Features:
    • vB Pager Buddy List ?pop-up? window is used to keep track of the friends you wish to interact with. By going to your "vB Pager Buddies", you'll be able to see which of your friends are currently online and offline, and be able to send them a pager message. Adding people to your buddy list also allow you to send pager messages to multiple forum members at the same time. You may add any member of the forums to your buddy list by clicking the icon next to their names in the vB Pager Online Members Page or Clicking the Manage Buddies Link to add/remove members into your list.
    • vB Pager Ignore List ?pop-up? window lists are used for those people who's messages you wish not recieve from.
    • Received Pager Messages are Draggable Inline Popups.
    • Sending a message opens up a small window where you can type in message to be sent.
    • Optional Anonymity: you can choose to hide your username when paging another user on the forum, & define which Usergroup can utilize this option.
    • The window comes in with a built-in character counter to enable the user to keep track of the characters typed.
    • Logs of all incoming and outgoing pager messages ?Inbox/Sent Items? member has, can be viewed and deleted.
    • Download Stored Messages as XML, CSV, TXT.
    • Members can turn the vB Pager Off anytime they wish not to receive pager messages, and they can select the option to receive pager messages from those who are in their Pager Buddy List only.
  • Admin CP Features:
    • vB Pager Options
      • Switch the paging system on or off anytime you wish!
      • vB Pager AJAX Check Period control.
      • Set to mark all read messages as deleted messages after being read by end users and prune them automaticly every one hour with cron job.(v3.0.4)
      • vB Pager Display Window Refresh Period control .
      • Set Floodcheck - Minimum Time Between Pager Messages.
      • Set Maximum Pager Messages Per-Page in inbox/sent items.
      • Allow vB Code in Pager Messages control.
      • Set the Sizes of Width and Height of the vB Pager Buddy List Window.
      • Set the Width Size of the Received Pager Message Box.(v3.0.1)
      • Enable Notification Sound on New Received Pager Message.(v3.0.1)
      • Enable/Disable the display of Avatar.(v3.0.2)
      • Banned Users.
    • Pager Message Statistics
      • Mass prune stored pager messages (All, Unread, and Deleted Messages).
      • search for users with X number of pager messages.
      • Delete pager messages for user x.
  • Usergroup based Permissions:
    • Can Send Pager Messages. (Yes/No)
    • Maximum Stored Pager Messages.
    • Minimum Number of Posts Required Before Can Send Pager Messages.
    • Minimum Number of Posts Required (Per Day) Before Can Send Pager Messages.
    • Maximum Number of Pager Messages Can Send Per Day.
    • Maximum Recipients to Send Pagers at a time.
    • Maximum Characters Per Pager Message.
    • Can Hide Their Username When Paging Another User. (Yes/No)
    • Can Use Allow Reply Option When Sending Pager. (Yes/No)
    • Can Send Pager Message to All Users. (Yes/No)
  • Other Features:
    • XML Product.
    • Fully Phrased.
    • No file edits.
  • Screenshots, Updates, FAQs & Add-Ons:
    • See second & third post.
  • Contents of vbpager.zip:
    • README.txt
    • Uploads
      • pager.php
      • pager_sound.wav (v3.0.1)
      • admincp
        • pageradmin.php
      • includes
        • xml
          • bitfield_pager.xml
          • cpnav_pager.xm
      • images
        • statusicon
          • vbpager.gif
          • vbpager_icon.gif
          • vbpager_user_buddylist_invisible.gif
          • vbpager_user_buddylist_online.gif
          • vbpager_user_ignorelist_invisible.gif
          • vbpager_user_ignorelist_online.gif
          • vbpager_user_invisible.gif
          • vbpager_user_offline.gif
          • vbpager_user_online.gif
          • vbpager_user_remove.gif
  • Contents of xml Product:
    • vB Pager Templates
      • PAGER
      • PAGERBUDDYLIST
      • pagerbuddylistbit
      • pager_messagelist
      • pager_messagelistbit
      • pager_multipager
      • pager_newpager
    • vB Pager plugins
      • vB Pager (cache_temlates)
      • vB Pager (parse_templates)
      • vB Pager (profile_updateoptions)
      • vB Pager (template_groups)
      • vB Pager (userdata_doset)
      • vB Pager (userdata_start)
      • vB Pager (cron_script_cleanup)
    • vB Pager phrases
      • Many of 'em
    • vB Pager Database Modifications
      • New Tables (pagerreceipt, pagertext)
      • Alterd Tables (user, usergroup, usertextfield)
How to Install:
  • Simply download the zip file, Unzip it to a directory on your computer and follow the steps from the README.txt
  • Remember to Change vB Pager Pemrissions from the Usergroup Manager.
  • Make sure that you got your forum url filled in the Help Site Name / URL / Contact Details under your vBulletin Options. See this post
  • Make sure that you got your forum directory name filled in the Forum Directory Name under your vB Pager Options.
  • Please Read This Post befor asking for help.
How to Uninstall:
  • Simply remove all uploaded files, revert your edited templates, and uninstall vB Pager Product from the Manage Products under the Plugin System in your ADMINCP.
Known Issues:
  • Permissions are not being inherited from secondary usergroups.
Thanks to aberg for the Dutch translation.

PLEASE REMEMBER TO BACKUP BEFORE YOU BEGIN!
If you like this hack, please be kind and click on

Show Your Support

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

Comments
  #872  
Old 06-10-2006, 10:07 AM
SnapOff Racing SnapOff Racing is offline
 
Join Date: Apr 2006
Posts: 336
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

nevermind uae...i found out the problem...i did a view page source and saw that for some reason the code in the stuff i have didn't have this hack to this extent in it.

Code:
<!-- [START HACK='vB Pager' AUTHOR='UAEWEB.COM' VERSION='3.0.3' CHANGEID= 5 ] -->
		<style type="text/css">
	#PLAYER { position:absolute; height:1; width:1px; top:10; left:0; }
</style>
<script type="text/javascript">
var qstring = '';

function check_pager(qstring)
{
	vbPage = new vB_AJAX_Handler(true);
	vbPage.onreadystatechange(ShowPager);
	 if (qstring=='' || qstring==null)
	  {
	 vbPage.send('/forums/pager.php?action=pager&do=readpager&', 'nocache=' + (5 * Math.random() * 1.33) );
	  }
	 else
	  {
	 vbPage.send('/forums/pager.php', qstring);
	  }
}

function Close_Pager(qstring)
{
	check_pager(qstring);
}

function ShowPager()
{
	var refreshtime = 60;
		if (refreshtime > 0)
		 refreshtime = refreshtime * 1000;

	if (vbPage.handler.readyState == 4 && vbPage.handler.status == 200)
	{

// Ignore result if its "Fatal Error"
		resultText = vbPage.handler.responseText;
		isError = resultText.indexOf("Fatal error");
			if (isError >= 0 && isError < 25)
				vbPage.handler.responseText = '';

		if (vbPage.handler.responseText)
		 {			 
		document.body.style.cursor = 'default';
		pagerbox = fetch_object('PLAYER');				
		pagerbox.innerHTML = vbPage.handler.responseText;
		displayPager();
			if (vbPage.handler.responseText == '' || vbPage.handler.responseText == null)
			 {
			 	pagerbox.innerHTML = '';
				setTimeout('check_pager()', refreshtime);
			 }
		 }
		else
		 {		if (refreshtime > 0)
			setTimeout('check_pager()', refreshtime);
		 }
	}
}
check_pager();
</script>
<script type="text/javascript">
var ns=(document.layers);
var ie=(document.all);
var w3=(document.getElementById && !ie);
var calunit=ns? "" : "px"


function displayPager()
{
	if(!ns && !ie && !w3) return;
	if(ie)		objPager=eval('document.all.PLAYER.style');
	else if(ns)	objPager=eval('document.layers["PLAYER"]');
	else if(w3)	objPager=eval('document.getElementById("PLAYER").style');
        if (ie||w3)
        objPager.visibility="visible";
        else
        objPager.visibility ="show";

	if (ie)
	{
		documentWidth  =truebody().offsetWidth/2+truebody().scrollLeft-20;
		documentHeight =truebody().offsetHeight/2+truebody().scrollTop-50;
	}	
	else if (ns)
	{
		documentWidth=window.innerWidth/2+window.pageXOffset-20;
		documentHeight=window.innerHeight/2+window.pageYOffset-20;
	} 
	else if (w3)
	{
		documentWidth=self.innerWidth/2+window.pageXOffset-20;
		documentHeight=self.innerHeight/2+window.pageYOffset-20;
	} 
	objPager.left=documentWidth-200+calunit;
	objPager.top =documentHeight-100+calunit;
}


function truebody()
{
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

// Drag box Code

function Browser() 
{
  var ua, s, i;
  this.isIE    = false;
  this.isNS    = false;
  this.version = null;
  ua = navigator.userAgent;
  s = "MSIE";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isIE = true;
    this.version = parseFloat(ua.substr(i + s.length));
    return;
  }
  s = "Netscape6/";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    this.version = parseFloat(ua.substr(i + s.length));
    return;
  }
// Treat any other "Gecko" browser as NS 6.1.
  s = "Gecko";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    this.version = 6.1;
    return;
  }
}

var browser = new Browser();

// Global object to hold drag information

var dragObj = new Object();
dragObj.zIndex = 0;

function dragStart(event, id) {

  var el;
  var x, y;

// If an element id was given, find it. Otherwise use the element being
// clicked on.

  if (id)
    dragObj.elNode = document.getElementById(id);
  else {
    if (browser.isIE)
      dragObj.elNode = window.event.srcElement;
    if (browser.isNS)
      dragObj.elNode = event.target;

// If this is a text node, use its parent element.

    if (dragObj.elNode.nodeType == 3)
      dragObj.elNode = dragObj.elNode.parentNode;
  }

// Get cursor position with respect to the page.

  if (browser.isIE) {
    x = window.event.clientX + document.documentElement.scrollLeft
      + document.body.scrollLeft;
    y = window.event.clientY + document.documentElement.scrollTop
      + document.body.scrollTop;
  }
  if (browser.isNS) {
    x = event.clientX + window.scrollX;
    y = event.clientY + window.scrollY;
  }

// Save starting positions of cursor and element.

  dragObj.cursorStartX = x;
  dragObj.cursorStartY = y;
  dragObj.elStartLeft  = parseInt(dragObj.elNode.style.left, 10);
  dragObj.elStartTop   = parseInt(dragObj.elNode.style.top,  10);

  if (isNaN(dragObj.elStartLeft)) dragObj.elStartLeft = 0;
  if (isNaN(dragObj.elStartTop))  dragObj.elStartTop  = 0;

// Update element's z-index.

  dragObj.elNode.style.zIndex = ++dragObj.zIndex;

// Capture mousemove and mouseup events on the page.

  if (browser.isIE) {
    document.attachEvent("onmousemove", dragGo);
    document.attachEvent("onmouseup",   dragStop);
    window.event.cancelBubble = true;
    window.event.returnValue = false;
  }
  if (browser.isNS) {
    document.addEventListener("mousemove", dragGo,   true);
    document.addEventListener("mouseup",   dragStop, true);
    event.preventDefault();
  }
}

function dragGo(event) 
{
  var x, y;
// Get cursor position with respect to the page.

  if (browser.isIE) {
    x = window.event.clientX + document.documentElement.scrollLeft
      + document.body.scrollLeft;
    y = window.event.clientY + document.documentElement.scrollTop
      + document.body.scrollTop;
  }
  if (browser.isNS) {
    x = event.clientX + window.scrollX;
    y = event.clientY + window.scrollY;
  }

// Move drag element by the same amount the cursor has moved.

  dragObj.elNode.style.left = (dragObj.elStartLeft + x - dragObj.cursorStartX) + "px";
  dragObj.elNode.style.top  = (dragObj.elStartTop  + y - dragObj.cursorStartY) + "px";

  if (browser.isIE) {
    window.event.cancelBubble = true;
    window.event.returnValue = false;
  }
  if (browser.isNS)
    event.preventDefault();
}

function dragStop(event) 
{
  // Stop capturing mousemove and mouseup events.

  if (browser.isIE) {
    document.detachEvent("onmousemove", dragGo);
    document.detachEvent("onmouseup",   dragStop);
  }
  if (browser.isNS) {
    document.removeEventListener("mousemove", dragGo,   true);
    document.removeEventListener("mouseup",   dragStop, true);
  }
}

// End Drag box Code

function closepager(id)
{
 objplayer = fetch_object('PLAYER');
	objplayer.innerHTML = ' ';
	if (ie||w3)
	 objplayer.display="none";
	else
	 objplayer.visibility ="hide";
}

function SubmitForm(frmobj, rid)
 {
	minchar = 3;
	maxchar = "500";
  if (frmobj.message.value.length > maxchar)
   {
   	alert("The text that you have entered is too long. Maximum characters per message is " + maxchar + "");
   	return false;
   }

  if (frmobj.message.value.length < minchar)
   {
	alert("Message is too short. Please lengthen your message to at least 3 characters.");
    return false;
   }
  else
   {
				canreply = 0;
		if (typeof frmobj.canreply != 'undefined')
			if (frmobj.canreply.checked==true)
	  			canreply = 1;
  			
   	 check_pager('action=pager&do=pagerreply&message=' + PHP.urlencode(frmobj.message.value) + '&rid=' + rid + '&canreply=' + canreply);
     closepager('PLAYER');
     return false;
   }
    return false;
 }

function textCounter(field) {
maxlimit = 500;
  if (field.value.length > maxlimit)
      {field.value = field.value.substring(0, maxlimit);}
      else
      {document.frmpager.charNum.value = maxlimit - field.value.length;}
  }
    
</script>
		<DIV ID="PLAYER" style="position:auto;overflow:auto;width:500px;">
		</DIV>

<!-- [END HACK='vB Pager' AUTHOR='UAEWEB.COM' VERSION='3.0.3' CHANGEID= 5 ] -->
Reply With Quote
  #873  
Old 06-12-2006, 06:14 PM
nymyth nymyth is offline
 
Join Date: Jun 2002
Location: New York
Posts: 367
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

any news on why IE crashes when a new message comes in???

Peace
Reply With Quote
  #874  
Old 06-13-2006, 01:25 PM
hotwheels hotwheels is offline
 
Join Date: May 2005
Location: Cheyenne, wy
Posts: 1,380
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

nymyth........this is the current issue with this hack:
Quote:
Originally Posted by johon
It's truly bad, taht there seems to be no support any longer on this great hack, my users love it.

Normally, the mentioned problem should be fixed quite easily if the Pop is registered for the IE (http://support.microsoft.com/kb/912945/EN-US/) buit I don't know how.

Too bad....

Johon
Reply With Quote
  #875  
Old 06-13-2006, 02:37 PM
Gizmo5h1t3's Avatar
Gizmo5h1t3 Gizmo5h1t3 is offline
 
Join Date: Aug 2005
Location: ROCHDALE LANCS UK
Posts: 650
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

weird that, ive never had an issue with it, its worked fine since the day i installed it
Reply With Quote
  #876  
Old 06-13-2006, 09:55 PM
dwbro1's Avatar
dwbro1 dwbro1 is offline
 
Join Date: Apr 2006
Posts: 63
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

it crashes my IE also i had to finally diable it..
Reply With Quote
  #877  
Old 06-14-2006, 10:09 PM
AMFMaree AMFMaree is offline
 
Join Date: Mar 2006
Posts: 21
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Im installing this on another forum, I already have it in use on my own with NO problems.But for some reason I can not get the pop up reply box to work..everything seems to be uploaded and changed correctly..but its still not working..anyone have any ideas?
Reply With Quote
  #878  
Old 06-15-2006, 10:22 PM
morrow's Avatar
morrow morrow is offline
 
Join Date: Mar 2002
Location: NJ
Posts: 370
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by cyberbeggar
I have installed but I get this message



Any reason why I get this?
any answers to this issue: "Sorry, you are not allowed to use vB Pager!"
Reply With Quote
  #879  
Old 06-19-2006, 01:17 AM
jadkar jadkar is offline
 
Join Date: Feb 2006
Posts: 42
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Does anyone have an answer yet as to why the pager doesn't work accross styles?? If you send a page to someone who is on a different style then you they will not get it. Huge shortcoming to the hack
Reply With Quote
  #880  
Old 06-19-2006, 03:47 AM
GrCh_Jeff's Avatar
GrCh_Jeff GrCh_Jeff is offline
 
Join Date: Dec 2005
Posts: 68
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by morrow
any answers to this issue: "Sorry, you are not allowed to use vB Pager!"
You must go to your admincp>> usergroups>> can use pager etc.
Reply With Quote
  #881  
Old 06-19-2006, 05:22 AM
Danmaxito Danmaxito is offline
 
Join Date: May 2006
Posts: 5
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Anyone have any idea as to why vbpager does not work on my site:
www.Mac-headz.com
It also deactivates a lot of features on the board too.
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:14 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.05847 seconds
  • Memory Usage 2,328KB
  • 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
  • (1)bbcode_code
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (3)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