On request I have upgraded this mod, so you now as admin can deside if the input box should be a drop down box, or a regular text box
new version is 1.3.0 PART 1
You decide witch type of code to include into the template, therefor different templates can behaive differently.
her are how to upgrade
in file lang_main.php
- Code: Select all
[FIND]
$lang ['Nobirthday_today']='No users have a birthday today';
[AFTER, ADD]
$lang['Year'] = 'Year';
$lang['Month'] = 'Month';
$lang['Day'] = 'Day';
in file usercp_register.php
- Code: Select all
[FIND]
$signature = str_replace('<br />', "\n", $signature);
[AFTER, AD]
$b_day = ( isset($HTTP_POST_VARS['b_day']) ) ? intval ($HTTP_POST_VARS['b_day']) : 0;
$b_md = ( isset($HTTP_POST_VARS['b_md']) ) ? intval ($HTTP_POST_VARS['b_md']) : 0;
$b_year = ( isset($HTTP_POST_VARS['b_year']) ) ? intval ($HTTP_POST_VARS['b_year']) : 0;
[FIND]
// find the birthday values, reflected by the $lang['Submit_date_format']
[AFTER, ADD]
if ($b_day || $b_md || $b_year) //if a birthday is submited, then validate it
{
$user_age=(date('md')>=$b_md.$b_day) ? date('Y') - $b_year : date('Y') - $b_year - 1 ;
// Check maximum user age
if ($user_age>$board_config['max_user_age']) $b_md=13 ;
// Check minimum user age
if ($user_age<$board_config['min_user_age']) $b_md=13 ;
if (!checkdate($b_md,$b_day,$b_year))
{
$error = TRUE;
if( isset($error_msg) )$error_msg .= "<br />";
$error_msg .= $lang['Wrong_birthday_format'];
} else
{
$birthday = ($error) ? $birthday : mkrealdate($b_day,$b_md,$b_year);
$next_birthday_greeting = (date('md')<$b_md.$b_day) ? date('Y'):date('Y')+1 ;
}
} else
[FIND]
$interests = htmlspecialchars($userdata['user_interests']);
[AFTER, ADD]
$b_day = ($userdata['user_birthday']!=999999) ? realdate('d',$userdata['user_birthday']):'';
$b_md = ($userdata['user_birthday']!=999999) ? realdate('m',$userdata['user_birthday']):'';
$b_year = ($userdata['user_birthday']!=999999) ? realdate('Y',$userdata['user_birthday']):'';
[FIND]
if ( $mode == 'editprofile' )
{
$template->assign_block_vars('switch_edit_profile', array());
}
[BEFORE, ADD]
$s_b_day = $lang['Day'].' <select name="b_day" size="1" class="gensmall" size="1">
<option value="0"'.(($b_day==0)?'SELECTED':'').'> - </option>
<option value="1"'.(($b_day==1)?'SELECTED':'').'> 1 </option>
<option value="2"'.(($b_day==2)?'SELECTED':'').'> 2 </option>
<option value="3"'.(($b_day==3)?'SELECTED':'').'> 3 </option>
<option value="4"'.(($b_day==4)?'SELECTED':'').'> 4 </option>
<option value="5"'.(($b_day==5)?'SELECTED':'').'> 5 </option>
<option value="6"'.(($b_day==6)?'SELECTED':'').'> 6 </option>
<option value="7"'.(($b_day==7)?'SELECTED':'').'> 7</option>
<option value="8"'.(($b_day==8)?'SELECTED':'').'> 8</option>
<option value="9"'.(($b_day==9)?'SELECTED':'').'> 9</option>
<option value="10"'.(($b_day==10)?'SELECTED':'').'> 10</option>
<option value="11"'.(($b_day==11)?'SELECTED':'').'> 11 </option>
<option value="12"'.(($b_day==12)?'SELECTED':'').'> 12 </option>
<option value="13"'.(($b_day==13)?'SELECTED':'').'> 13 </option>
<option value="14"'.(($b_day==14)?'SELECTED':'').'> 14 </option>
<option value="15"'.(($b_day==15)?'SELECTED':'').'> 15 </option>
<option value="16"'.(($b_day==16)?'SELECTED':'').'> 16 </option>
<option value="17"'.(($b_day==17)?'SELECTED':'').'> 17</option>
<option value="18"'.(($b_day==18)?'SELECTED':'').'> 18</option>
<option value="19"'.(($b_day==19)?'SELECTED':'').'> 19</option>
<option value="20"'.(($b_day==20)?'SELECTED':'').'> 20</option>
<option value="21"'.(($b_day==21)?'SELECTED':'').'> 21 </option>
<option value="22"'.(($b_day==22)?'SELECTED':'').'> 22 </option>
<option value="23"'.(($b_day==23)?'SELECTED':'').'> 23 </option>
<option value="24"'.(($b_day==24)?'SELECTED':'').'> 24 </option>
<option value="25"'.(($b_day==25)?'SELECTED':'').'> 25 </option>
<option value="26"'.(($b_day==26)?'SELECTED':'').'> 26 </option>
<option value="27"'.(($b_day==27)?'SELECTED':'').'> 27</option>
<option value="28"'.(($b_day==28)?'SELECTED':'').'> 28</option>
<option value="29"'.(($b_day==29)?'SELECTED':'').'> 29</option>
<option value="30"'.(($b_day==30)?'SELECTED':'').'> 30</option>
<option value="31"'.(($b_day==31)?'SELECTED':'').'> 31</option>
</select> ';
$s_b_md = $lang['Month'].' <select name="b_md" size="1" class="gensmall" size="1"}">
<option value="0"'.(($b_day==0)?'SELECTED':'').'> - </option>
<option value="1"'.(($b_md==1)?'SELECTED':'').'> 1 </option>
<option value="2"'.(($b_md==2)?'SELECTED':'').'> 2 </option>
<option value="3"'.(($b_md==3)?'SELECTED':'').'> 3 </option>
<option value="4"'.(($b_md==4)?'SELECTED':'').'> 4 </option>
<option value="5"'.(($b_md==5)?'SELECTED':'').'> 5 </option>
<option value="6"'.(($b_md==6)?'SELECTED':'').'> 6 </option>
<option value="7"'.(($b_md==7)?'SELECTED':'').'> 7</option>
<option value="8"'.(($b_md==8)?'SELECTED':'').'> 8</option>
<option value="9"'.(($b_md==9)?'SELECTED':'').'> 9</option>
<option value="10"'.(($b_md==10)?'SELECTED':'').'> 10</option>
<option value="11"'.(($b_md==11)?'SELECTED':'').'> 11</option>
<option value="12"'.(($b_md==12)?'SELECTED':'').'> 12</option>
</select> ';
$s_b_year = $lang['Year'].' <input type="text" class="post"style="width: 80px" name="b_year" size="4" maxlength="4" value="'.$b_year.'" /> ';
$i=0;
$s_birthday='';
for ($i=0;$i<=strlen($lang['Submit_date_format']);$i++)
{
switch ($lang['Submit_date_format'][$i])
{
case d: $s_birthday .=$s_b_day;break;
case m: $s_birthday .=$s_b_md;break;
case Y: $s_birthday .=$s_b_year;break;
}
}
[FIND]
'BIRTHDAY' => $birthday,
[REPLACE WITH]
'S_BIRTHDAY' => $s_birthday,
In your template, you may choise if you would like a drop down, or a regular text box, here are showen how the to types should look in subsilver template
in file profile_add_body.tpl
Regular text box
- Code: Select all
<tr>
<td class="row1"><span class="gen">{L_BIRTHDAY}:</span><br /><span class="gensmall">{L_BIRTHDAY_EXPLAIN}<br /></span></td>
<td class="row2"><input type="text" class="post"style="width: 80px" name="birthday" size="10" maxlength="10" value="{BIRTHDAY}" /></td>
</tr>
Drop down box
- Code: Select all
<tr>
<td class="row1"><span class="gen">{L_BIRTHDAY}:</span></td>
<td class="row2"><span class="gensmall">{S_BIRTHDAY}</span></td>
</tr>
[/code]