Go Back   vb.org Archive > vBulletin Modifications > vBulletin 4.x Modifications > vBulletin 4.x Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Basic QR Intergraton (2D Barcodes) for VB Threads (QR Pages by BOP5) VB4 Details »»
Basic QR Intergraton (2D Barcodes) for VB Threads (QR Pages by BOP5) VB4
Version: 1.5, by BirdOPrey5 (Senior Member) BirdOPrey5 is offline
Developer Last Online: Aug 2023 Show Printable Version Email this Page

Category: Show Thread Enhancements - Version: 4.x.x Rating:
Released: 10-27-2011 Last Update: 01-07-2012 Installs: 32
Uses Plugins Template Edits
Re-useable Code Additional Files  
No support by the author.



Note: Updated to version 1.5- added QR codes for attachments and profiles as well as threads.

This isn't a polished mod, its purpose is to bring 2D Barcode (QR Code) integration to vBulletin. I will be marking it unsupported as I do not recommend users without some basic HTML or coding experience attempt to use the mod. I will NOT be answering basic setup questions. Instructions for the manual template edits are included in the zip. you may use them if you wish but I strongly suggest you work on a custom solution.

Live Demo: Qapla.com Thread

This mod will allow a uniqe QR Code to be generated and displayed for every thread on your forum.

Users with Android, iPhone, and other advanced phones can easily scan these QR Codes and share links with friends via email, text, and other social networking platforms.

The QR generation is handled by a free open-source project called phpqrcode which has its own GNU Lesser General Public License.

I have created the vBulletin interface needed to generate codes for individal threads, attachments, and/or profile pages.

The mod will check if the QR Code has already be generated for a thread (or profile, or attachment) and if so will simply display the png file previously created. If this is the first time someone has viewed the thread (since installing this mod) it will generate and save the QR Code for future use.

All QR Codes are stored in .png format in a new folder called /images/qr/ which you must create and must be writable. (chmd 755 is usually sufficient but if you have problems go to 777).

A utility included in the Admin CP settings will allow you to delete all these images if necessary.

Other Admin CP settings include the ability to set the size, quality, and border size around the QR Code.

What isn't finished is the best way to intergrate this onto your SHOWTHREAD pages and attachment template. I have instructions for a manual template edits that will give you a basic "box" that you can mouse-over and get the full image to pop-up over the rest of your page.

I am aware this isn't an ideal setup but I am more of a coder than a designer. If anyone has some suggestions (with code) for a better implementation I am open to suggestions.

This mod could be expanded to show QR Codes on all pages, not just threads, but until a better way is found to display the code on the page I didn't bother.

Server Load- In general the mod only generates a code on the first view of the thread- this will usually be when a new thread is first submitted so in the long run I don't anticipate any major server load by this mod. However if you have a very large and very busy forum you can expect a temporary increased load after installation as members visit hundreds of threads which have never had a QR Code generated before. This increased load should decrease after the surge of new generations end.

Disk Usage - The smaller the QR Code you generate the smaller the file size per image. In my experience the average size of each QR code png file was 600 bytes. This would mean about 586 KB per 1,000 threads or 58 Megabytes for 100,000 threads. You can extrapolate from there.

Please Mark as Installed if you use this.

Download Now

File Type: zip QR Pages by BOP5 VB4v15.zip (241.5 KB, 134 views)

Screenshots

File Type: jpg vb4_qrthread1.jpg (92.6 KB, 0 views)
File Type: jpg vb4_settings.jpg (93.1 KB, 0 views)
File Type: jpg vb4_profile1.jpg (98.8 KB, 0 views)
File Type: jpg vb4_attach1.jpg (56.1 KB, 0 views)

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.
3 благодарности(ей) от:
nacaruncr, nhawk

Comments
  #52  
Old 01-10-2012, 01:11 AM
Mr_Running Mr_Running is offline
 
Join Date: May 2010
Posts: 536
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Boofo View Post
Here's a pic of my profile with the QR code added via the profile_sidebar_first template hook.
I can't seem to find this hook?

Hey Boofo would you mind sharing what you did?

Cheers,
Reply With Quote
  #53  
Old 01-10-2012, 01:16 AM
Alan_SP's Avatar
Alan_SP Alan_SP is offline
 
Join Date: Nov 2009
Posts: 1,122
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Mr_Running View Post
What I mean is...
QR code only showing when logged in within the ad space.
and the ad only showing when unlogged (guest)
You add QR code to appear beside ad code, not inside ad code, making them work independently.
Reply With Quote
  #54  
Old 01-10-2012, 01:27 AM
Mr_Running Mr_Running is offline
 
Join Date: May 2010
Posts: 536
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yes, I have the ad / QR all set up. Thanks

Now working on which set up?
Quote:
Originally Posted by Boofo View Post
Here's a pic of my profile with the QR code added via the profile_sidebar_first template hook.
profile_sidebar_first (which I can not find...?)
vs
MEMBERINFO


Oops, I think I just figured out what I need to do...manually change product to use the
Code:
{vb:raw template_hook.profile_sidebar_first}
is this correct?
Reply With Quote
  #55  
Old 01-10-2012, 02:04 AM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yes, sir. And make sure to make the template with the code needed there.
Reply With Quote
  #56  
Old 01-11-2012, 12:07 AM
Alan_SP's Avatar
Alan_SP Alan_SP is offline
 
Join Date: Nov 2009
Posts: 1,122
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok, just understood what Boofo suggests.

You need to edit plugin QR Profiles and add at the very end (but before }, it should be last):

PHP Code:
$template_hook['profile_sidebar_first'] = '<center>'.$userinfo['qr'].'</center>'
You could also go without centering QR code, in that case just use this code:

PHP Code:
$template_hook['profile_sidebar_first'] = $userinfo['qr']; 
I started using this, as this is one manual template edit less. Thanks Boofo for idea. :up:
Reply With Quote
  #57  
Old 01-11-2012, 12:08 AM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

No, I made a template with the code and rendered it in that hook.
Reply With Quote
  #58  
Old 01-11-2012, 12:17 AM
Alan_SP's Avatar
Alan_SP Alan_SP is offline
 
Join Date: Nov 2009
Posts: 1,122
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok, but this way works too, you could check it also.

But yes, I understand why making complete template could be practical. Would you share here your template?
Reply With Quote
  #59  
Old 01-11-2012, 12:30 AM
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Location: Des Moines, IA (USA)
Posts: 15,776
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Just the same code that was suggested in the readme file, with a div added:

Template Name: memberinfo_bop5qr_profiles

Template Code:

HTML Code:
<vb:if condition="$vboptions[bop5qr_en] AND $vboptions[bop5qr_enprofiles]">  
	<div style="text-align: center;">{vb:raw userinfo.qr}</div>
</vb:if>

In the member_execute_start hook add this at the bottom (right before the closing } )

PHP Code:
   $templater vB_Template::create('memberinfo_bop5qr_profiles'); 
   
$templater->register('userinfo'$userinfo); 
   
$tab_html $templater->render(); 
   
$template_hook['profile_sidebar_first'] .= $tab_html
Reply With Quote
  #60  
Old 01-11-2012, 04:14 AM
Alan_SP's Avatar
Alan_SP Alan_SP is offline
 
Join Date: Nov 2009
Posts: 1,122
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for sharing how to make template. :up:
Reply With Quote
  #61  
Old 01-11-2012, 04:42 AM
Mr_Running Mr_Running is offline
 
Join Date: May 2010
Posts: 536
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yes, I still feel like a beginner, what are the steps...
by the way I like OldSchoolDSL xml
now if Boofo's part was added...that would be awesome.
Reply With Quote
Благодарность от:
OldSchoolDSL
Reply


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:35 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05452 seconds
  • Memory Usage 2,366KB
  • Queries Executed 28 (?)
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
  • (1)bbcode_html
  • (3)bbcode_php
  • (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
  • (11)post_thanks_box
  • (3)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (2)post_thanks_postbit
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (5)postbit_attachment
  • (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_postinfo_query
  • fetch_postinfo
  • 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
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete