If you add a task and select to run it every weekday the options "Every Weekday" and "Sunday" are shown as selected.
Steps to reproduce:
1. Add or edit a task and select to run it every day. Save the task.
2. Edit the task again. Now the options "Every Weekday" and "Sunday" are highlighted.
<option value="*" selected="selected">Every Weekday</option>
<option value="0" selected="selected">Sunday</option>
in admin/inc/class_form.php find:
if(!empty($selected) && ((string)$value == (string)$selected || (is_array($selected) && in_array($value, $selected))))
{
$select_add = " selected=\"selected\"";
}
replace with
if(!empty($selected))
{
if(is_array($selected) && in_array($value, $selected))
{
$select_add = " selected=\"selected\"";
}
else if((is_string($value) || is_int($value)) && (string)$value == (string)$selected))
{
$select_add = " selected=\"selected\"";
}
}
Ah. Just change in_array($value, $selected) to in_array($value, $selected, true) then
That's not working. It shows up fine if you selected "Every Weekday". If you select another day no day is selected if you edit the settings again. I see no problem if I change the code like I posted before.
Ah that's right, nevermind. It's trying to compare a string to an integer. So instead we simply have to typecast it to a string. Try this, and this one should definately work: in_array((string)$value, $selected)
I can confirm it works as well
Thank you for your bug report.
This bug has been fixed in our internal code repository. Please note that the problem will not be fixed here until these forums are updated.
With regards,
MyBB Group