Go Back   vb.org Archive > vBulletin 4 Discussion > vB4 General Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 05-12-2013, 11:58 AM
MattGarner MattGarner is offline
 
Join Date: Apr 2006
Posts: 84
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Limit Font Size in Posts?

Is there a easy way to limit the font sizes that users can use in the posts? I know you can take the numbers from the drop down menu but they can then edit the actual BBcode and put whatever size they wish to use. I know one way of doing it but it means doing it for every single number that exists and that would take a lot of time.

Anyone got any solutions?

Cheers
Reply With Quote
  #2  
Old 05-12-2013, 04:02 PM
Lynne's Avatar
Lynne Lynne is offline
 
Join Date: Sep 2004
Location: California/Idaho
Posts: 41,180
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If you look at the page source, you will see something like this:
HTML Code:
<font size="7">Hello</font>
So, if you don't want the font to be any larger than font size 4, then you could use replacements variables to change "<font size="7">" to "<font size="4">" (and similar for size 5 and 6).
Reply With Quote
  #3  
Old 05-12-2013, 04:26 PM
MattGarner MattGarner is offline
 
Join Date: Apr 2006
Posts: 84
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Lynne View Post
If you look at the page source, you will see something like this:
HTML Code:
<font size="7">Hello</font>
So, if you don't want the font to be any larger than font size 4, then you could use replacements variables to change "<font size="7">" to "<font size="4">" (and similar for size 5 and 6).
We've tried that but noticed if a person changed the number themselves to say something like 20 it would remain at around font size 8. Even if we already told it to replace font size 8 with a lower font size - Do you know a way round that without having to add it for numbers above 10 etc?
Reply With Quote
  #4  
Old 05-12-2013, 04:50 PM
Lynne's Avatar
Lynne Lynne is offline
 
Join Date: Sep 2004
Location: California/Idaho
Posts: 41,180
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I don't know of a (simple) way. You may be able to use javascript to set a max font size? Can't you just ask your users to not do that?
Reply With Quote
  #5  
Old 05-12-2013, 05:08 PM
nerbert nerbert is offline
 
Join Date: May 2008
Posts: 784
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It shouldn't be hard to make a plugin for showthread_complete that uses preg_replace() to fix it. I'll see what I can do. (I'm slow and lazy though!)

--------------- Added [DATE]1368386382[/DATE] at [TIME]1368386382[/TIME] ---------------

TRy this:

Product: vBulletin

Hook Location: showthread_complete

Title: Whatever

Execution Order: 5

PHP Code:
$max_size "4";
$pattern '/<font size="(\d{2,}|[^1-' $max_size '])">/';
$replace '<font size="' $max_size '">';
$postbits preg_replace($pattern$replace$postbits); 
Reply With Quote
3 благодарности(ей) от:
Lynne, MattGarner, tbworld
  #6  
Old 05-12-2013, 07:34 PM
MattGarner MattGarner is offline
 
Join Date: Apr 2006
Posts: 84
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by nerbert View Post
It shouldn't be hard to make a plugin for showthread_complete that uses preg_replace() to fix it. I'll see what I can do. (I'm slow and lazy though!)

--------------- Added [DATE]1368386382[/DATE] at [TIME]1368386382[/TIME] ---------------

TRy this:

Product: vBulletin

Hook Location: showthread_complete

Title: Whatever

Execution Order: 5

PHP Code:
$max_size "4";
$pattern '/<font size="(\d{2,}|[^1-' $max_size '])">/';
$replace '<font size="' $max_size '">';
$postbits preg_replace($pattern$replace$postbits); 
That worked like a treat! Thank you very much
Reply With Quote
  #7  
Old 05-13-2013, 06:40 PM
nerbert nerbert is offline
 
Join Date: May 2008
Posts: 784
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Just thought of something, the regular expression should probably be case inssensitive just in case. Add an "i" at the end of the value of $pattern

$pattern = '/<font size="(\d{2,}|[^1-' . $max_size . '])">/i';
Reply With Quote
Благодарность от:
Lynne
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 10:51 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.03899 seconds
  • Memory Usage 2,233KB
  • Queries Executed 11 (?)
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)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (2)bbcode_html
  • (2)bbcode_php
  • (2)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (7)post_thanks_box
  • (4)post_thanks_box_bit
  • (7)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (2)post_thanks_postbit
  • (7)post_thanks_postbit_info
  • (7)postbit
  • (7)postbit_onlinestatus
  • (7)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
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • 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
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete