Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > General > Member Archives
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Details »»

Version: , by Mutt Mutt is offline
Developer Last Online: Mar 2013 Show Printable Version Email this Page

Version: Unknown Rating:
Released: 01-18-2002 Last Update: Never Installs: 0
 
No support by the author.

here's a quick javascript to add to the calendar_enterevent template so that the day of the month dropdown is adjusted when you change the month or year so that days like Feb 31 aren't available choices. it even recognizes leap years.


goto it from http://javascript.internet.com and adjusted it to work with vb

open the template

add this right before the </head> tag
PHP Code:
<SCRIPT LANGUAGE="JavaScript">
//function for returning how many days there are in a month including leap years
function DaysInMonth(WhichMonthWhichYear) {
  var 
DaysInMonth 31;
  if (
WhichMonth == "4" || WhichMonth == "6" || WhichMonth == "9" || WhichMonth == "11"DaysInMonth 30;
  if (
WhichMonth == "2" && (WhichYear/4) != Math.floor(WhichYear/4))    DaysInMonth 28;
  if (
WhichMonth == "2" && (WhichYear/4) == Math.floor(WhichYear/4))    DaysInMonth 29;
  return 
DaysInMonth;
}

//function to change the available days in a months
function ChangeOptionDays() {
  
Month document.vbform.month[document.vbform.month.selectedIndex].value;
  
Year document.vbform.year[document.vbform.year.selectedIndex].value;

  
DaysForThisSelection DaysInMonth(MonthYear);
  
CurrentDaysInSelection document.vbform.day.length;
  if (
CurrentDaysInSelection DaysForThisSelection) {
    for (
i=0i<(CurrentDaysInSelection-DaysForThisSelection); i++) {
      
document.vbform.day.options[document.vbform.day.options.length 1] = null
    
}
  }
  if (
DaysForThisSelection CurrentDaysInSelection) {
    for (
i=0i<(DaysForThisSelection-CurrentDaysInSelection); i++) {
      
NewOption = new Option(document.vbform.day.options.length 1);
      
document.vbform.day.add(NewOption);
    }
  }
    if (
document.vbform.day.selectedIndex 0document.vbform.day.selectedIndex == 0;
}
</
script
add
PHP Code:
onchange="javascript:ChangeOptionDays()" 
to the month select field and the year select field

done

Show Your Support

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

Comments
  #2  
Old 01-18-2002, 06:44 PM
Mutt's Avatar
Mutt Mutt is offline
 
Join Date: Nov 2001
Posts: 331
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

make sure you remove the space in javascript
Reply With Quote
  #3  
Old 01-18-2002, 06:48 PM
Shenlong's Avatar
Shenlong Shenlong is offline
 
Join Date: Nov 2001
Location: Manhattan, New York
Posts: 167
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

can u be more specific on where to add the 2nd javascript code plz?
Reply With Quote
  #4  
Old 01-19-2002, 02:24 AM
Mutt's Avatar
Mutt Mutt is offline
 
Join Date: Nov 2001
Posts: 331
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

find these 2 tags

<select name="month" tabindex="1">

and

<select name="year" tabindex="3">

change them so they look like this

<select name="month" tabindex="1" onchange="javascript:ChangeOptionDays()">

and

<select name="year" tabindex="3" onchange="javascript:ChangeOptionDays()">

hope that is clearer
Reply With Quote
  #5  
Old 01-20-2003, 11:00 PM
Link14716's Avatar
Link14716 Link14716 is offline
 
Join Date: Jun 2002
Location: Georgia, USA
Posts: 2,519
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This hack will be incorrect in February 2100

Nice template mod, even though I don't use the calandar much.
Reply With Quote
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 12:10 AM.


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.04511 seconds
  • Memory Usage 2,256KB
  • Queries Executed 18 (?)
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
  • (2)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)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
  • (4)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_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