Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
  #1  
Old 03-05-2008, 01:17 PM
mdoliwa mdoliwa is offline
 
Join Date: Jan 2006
Posts: 20
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default regular expressions for post

Hi,
Would be very glad if someone could help me.
Hi have 3 question about using regular expressions in vbulletin, basically questions are how to do this ?
1. I would like to run all posts through some regular expressions set, and later do the same to post with id greater than last id from previous run. So I could set up some cron task to run weekly and change some words to links etc.

2. I'd like to run certain regexps set every time user is opening post.
3. I'd like to run certain regexps set every time user click "submit post" or edit button.

I'm sure some of you had similiar porblems, so maybe there are ready to use solutions.

cheers,
Marcin
Reply With Quote
  #2  
Old 03-05-2008, 02:01 PM
shovel's Avatar
shovel shovel is offline
 
Join Date: Mar 2002
Location: South Carolina, US
Posts: 222
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yeah you can run a regex against the posts, but to conserve process resources I'd probably run the regular expression on the creation of the post rather than on an entire set of data resulting in extra queries.
Reply With Quote
  #3  
Old 03-05-2008, 02:12 PM
mdoliwa mdoliwa is offline
 
Join Date: Jan 2006
Posts: 20
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yeah I believe the best way is to run all posts through regexps and then put it to the creation process. But my question is, how to do it? I'm not very familiar with php and vbulletin programming, but it's not a problem, as I was doing some perl last months. The only problem is where should I put the code ? . I believe first task should be done in seperate script, but which php script is coding post creating process?
Reply With Quote
  #4  
Old 03-05-2008, 02:59 PM
shovel's Avatar
shovel shovel is offline
 
Join Date: Mar 2002
Location: South Carolina, US
Posts: 222
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Actually with the implementation of the hook/plugin system you can process PHP code dynamically through the AdminCP. Goto..

AdminCP -> Plugins & Products -> Plugin Manager

If you add a plugin, you can fire off from a selected hook. I believe the hook you want for the process on a new post which would be "newpost_process". The variable that contains the post content is $post['message']. If you modify the post message remember that you also need to reset it within the datamanager. So after you perform your process you must run..

PHP Code:
$dataman->setr('pagetext',$post['message']; 
Reply With Quote
  #5  
Old 03-05-2008, 09:34 PM
mdoliwa mdoliwa is offline
 
Join Date: Jan 2006
Posts: 20
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Wow, never been playing with plugins in vbulletin, but looks like it's quiet smart idea
Thanks for help.

cheers,
Marcin
Reply With Quote
Reply

Thread Tools
Display Modes

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:24 PM.


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.05309 seconds
  • Memory Usage 2,192KB
  • Queries Executed 13 (?)
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
  • (1)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)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
  • 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
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete