HTML Logo by World Wide Web Consortium (www.w3.org). Click to learn more about our commitment to accessibility and standards.

3.0.17

Title "Clicking on a username starts an IM" issues
Description This bug report will issue fixes for this patch release where the option mentioned in the title of this bug report is causing problems.
Affects All users with the option enabled
Fix (Editing a member profile redirects to an IM, rather than to the profile)
Change line 179 of personalzone/pages/modules/editprofile.php from:

Code

      $url=$GLOBALS['FORUM_DRIVER']->member_profile_link($member_id);
to:

Code

      $url=$GLOBALS['FORUM_DRIVER']->member_profile_link($member_id,true);

Back to the top

Comments / View


Title 'On this page' utilities keep disappearing
Description The 'on this page' utilities in the login box (shown to staff-only) may incorrectly disappear from time to time. This is because the block cache is cacheing poorly.
Affects All users with the block cache on
Fix Change line 44 of sources/blocks/side_personal_stats.php from:

Code

      $info['cache_on']='array(((get_member()==$GLOBALS[\'FORUM_DRIVER\']->get_guest_id())||(has_specific_permission(get_member(),\'view_profiling_modes\')))?get_self_url(true):NULL,get_member(),get_param(\'special_page_type\',\'view\'))';
to:

Code

      $info['cache_on']='array(((get_member()==$GLOBALS[\'FORUM_DRIVER\']->get_guest_id())||(has_specific_permission(get_member(),\'view_profiling_modes\')))?get_self_url(true):NULL,get_member(),get_param(\'special_page_type\',\'view\'),count($_POST)==0)';

Back to the top

Comments / View


Title Add private chatroom link missing
Description The link to add a private chatroom is missing for non-administrators.
Affects All users
Fix Change line 335 of site/pages/modules/chat.php from:

Code

      if (has_specific_permission($member_id,'start_img'))

Code

     if (has_specific_permission($member_id,'create_private_room'))

Back to the top

Comments / View


Title Attachment permission bug
Description Non-administrators will receive errors when viewing attachments.

This is a serious bug that causes the attachment system to fail, and ocProducts apologises it has gone unnoticed in the newer two patch releases – like all bugs though, the quicker problems are reported, the quicker we can fix them, so please report any bugs you find.
Affects All users
Fix In all the .php files in sources/hooks/systems/attachments,
replace class Hook_ with class Hook_attachments_.

Back to the top

Comments / View


Title Bug on profile-view page
Description If there are multi-line custom profile fields, Javascript errors will occur when viewing profile screens, causing tooltip functionality to fail.
Affects OCF users
Fix If custom profile field values span multiple lines

Change line 40 of OCF_MEMBER_PROFILE_PAGE.tpl from:

Code

               <div class="ocf_member_detailer_{$CYCLE,omd,a,b}"><div onmouseout="Javascript: if (window.activateTooltip) deactivateTooltip(this,event);" onmousemove="Javascript: if (window.activateTooltip) repositionTooltip(this,event);" onmouseover="Javascript: if (window.activateTooltip) activateTooltip(this,event,'{VALUE*;}','auto');" class="ocf_member_detailer_inner">
to:

Code

               <div class="ocf_member_detailer_{$CYCLE,omd,a,b}"><div onmouseout="Javascript: if (window.activateTooltip) deactivateTooltip(this,event);" onmousemove="Javascript: if (window.activateTooltip) repositionTooltip(this,event);" onmouseover="Javascript: if (window.activateTooltip) activateTooltip(this,event,'{VALUE^*;}'.replace(/\n/g,'<br />'),'auto');" class="ocf_member_detailer_inner">

Back to the top

Comments / View


Title CEDI tree-view error
Description If the guest member doesn't have access to the root CEDI page, an 'invalid offset' is given when viewing the tree-view.
Affects All users with CEDI permissions set as to deny access for the root CEDI page.
Fix Change line 34 of sources/splurgh.php from:

Code

   if (is_null($first_id)) $first_id=db_get_first_id();
to:

Code

   if (is_null($first_id)) $first_id=db_get_first_id();

   if (!array_key_exists($first_id,$map)) return '';
(i.e. add two new lines)

However, perhaps the best solution is to grant guests access to the root CEDI page, yet deny them access to the CEDI module as a whole if it is this that they shouldn't have access to.

Back to the top

Comments / View


Title Editing language strings via the 'On this page' feature broken
Description The 'edit language strings used on this page' feature does not work when both:
  • the the feature has been used once already
  • the language file hasn't been previously overridded as a whole
Affects Most users (see above)
Fix Change line 527 of adminzone/pages/modules/admin_lang.php from:

Code

         $for_base_lang=get_lang_file_map(fallback_lang(),$lang_file);
to:

Code

         $for_base_lang=get_lang_file_map(fallback_lang(),$lang_file,true);

Change lines 756-766 of sources/lang.php from:

Code

 * @return array          The language entries
 */
function get_lang_file_map($lang,$file)
{
   //removed-assert

   $a=get_custom_file_base().'/lang_custom/'.$lang.'/'.$file.'.ini';
   if ((get_custom_file_base()!=get_file_base()) && (!file_exists($a)))
      $a=get_file_base().'/lang_custom/'.$lang.'/'.$file.'.ini';

   $b=(file_exists($a))?$a:get_file_base().'/lang/'.$lang.'/'.$file.'.ini';
to:

Code

 * @param  boolean        Force usage of original file
 * @return array          The language entries
 */
function get_lang_file_map($lang,$file,$non_custom=false)
{
   //removed-assert

   $a=get_custom_file_base().'/lang_custom/'.$lang.'/'.$file.'.ini';
   if ((get_custom_file_base()!=get_file_base()) && (!file_exists($a)))
      $a=get_file_base().'/lang_custom/'.$lang.'/'.$file.'.ini';

   $b=((file_exists($a)) && (!$non_custom))?$a:get_file_base().'/lang/'.$lang.'/'.$file.'.ini';

Back to the top

Comments / View


Title Error when warning members
Description An error about a missing parameter will be shown when trying to warn a member.

In addition, the link to edit an existing warning will not work correctly.

In addition, the displayed interface after editing a warning is a mess, due to a help panel being shown in addition to both left and right hand panels. This last issue will be corrected in the next patch release, as it involves numerous changes to the GLOBAL.tpl file.
Affects OCF users
Fix Change line 122 of site/pages/modules/warnings.php from:

Code

      $member_id=get_param_integer('member_id');
to:

Code

      $member_id=post_param_integer('member_id');

Change line 127 of personalzone/pages/modules/myhome.php from:

Code

         $explanation=hyperlink(build_url(array('page'=>'warnings','type'=>'_ed','id'=>$row['id']),get_module_zone('warnings')),$row['w_explanation'],false,true,$row['w_explanation_orig']);
to:

Code

         $explanation=hyperlink(build_url(array('page'=>'warnings','type'=>'_ed','id'=>$row['id'],'redirect'=>get_self_url(true)),get_module_zone('warnings')),$row['w_explanation'],false,true,$row['w_explanation_orig']);

Back to the top

Comments / View


Title File permissions on data_custom/modules/admin_backup
Description The installer/documentation did not set/specify-to-set permissions on the data_custom/modules/admin_backup directory.
Write permissions are required for the config_editor and code_editor scripts to function.
Affects All users
Fix Assign write permission to this directory, as they are for other such directories in ocPortal (e.g. downloads/attachments)

Back to the top

Comments / View


Title Member's can't delete topics
Description Members can't delete topics even if they have permission (except staff).
Affects OCF users
Fix Change line 175 of sources/ocf_topics_action.php from:

Code

   if ((!ocf_may_delete_topics_by($forum_id,get_member(),$info[0]['t_cache_first_member_id'])) || ((($info[0]['t_pt_from']!=get_member()) || ($info[0]['t_pt_to']!=get_member())) && (!has_specific_permission(get_member(),'view_other_pt')) && (is_null($forum_id))))
to:

Code

   if (
    (!ocf_may_delete_topics_by($forum_id,get_member(),$info[0]['t_cache_first_member_id'])) ||
    (
     (
      ((!is_null($info[0]['t_pt_from'])) && ($info[0]['t_pt_from']!=get_member())) ||
      ((!is_null($info[0]['t_pt_to'])) && ($info[0]['t_pt_to']!=get_member()))
     ) &&
     (!has_specific_permission(get_member(),'view_other_pt')) &&
     (is_null($forum_id))
    )
   )
      access_denied('I_ERROR');

Back to the top

Comments / View


Title Newsletter preview mails may be incorrect
Description Newsletter previews are sent out to the staff address as a part of the confirmation process for sending a newsletter. However, these newsletter previews are rendered with guest permissions and hence if advanced features are used, like advanced custom HTML, display will be degraded for guest security.
The final mails are sent out correctly, however.
Affects All users
Fix Change line 309 of adminzone/pages/modules/admin_newsletter.php from:

Code

      mail_wrap($subject,$message,array($address),do_lang('NEWSLETTER_SUBSCRIBER',get_site_name()),'','',3,NULL,true);
to:

Code

      mail_wrap($subject,$message,array($address),do_lang('NEWSLETTER_SUBSCRIBER',get_site_name()),'','',3,NULL,true,NULL,true);

Back to the top

Comments / View


Title Newsletters and non-OCF forums
Description Certain users (see below) may get an error when trying to send a "what's new" newsletter.
Affects Non-OCF users who have the forum in a separate database to ocPortal
Fix Change line 25 of sources/hooks/modules/admin_newsletter/ocf_forumview.php from:

Code

      $new=new ocp_tempcode();
to:

Code

      $new=new ocp_tempcode();
   
      if (get_forum_type()!='ocf') return array();

(in other words, add a blank line and a new line, underneath the preexisting first line)

Change line 130 of adminzone/pages/modules/admin_newsletter.php from:

Code

         if (is_null($temp)) continue;
to:

Code

         if ((is_null($temp)) || (count($temp)==0)) continue;

Back to the top

Comments / View


Title Poll archive
Description If voting on a poll from within the poll archive, voting is done on all polls on the current screen of polls.
Affects All users
Fix In POLL_ANSWER.tpl replace name="cast" with name="cast_{PID*}".

Change line 79 of sources/blocks/main_poll.php from:

Code

      $cast=post_param_integer('cast',-1);
to:

Code

      $cast=post_param_integer('cast_'.strval($param),-1);

Back to the top

Comments / View


Title Polls with 9 choices
Description If you put 9 choices into a poll (not an OCF poll), there's a 10th coming up as blank.
Affects All users
Fix Change lines 216 and 279 of cms/pages/modules/cms_polls.php from:

Code

         if ($option9=='') $num_options=8;
to:

Code

         if ($option10=='') $num_options=9;
         if ($option9=='') $num_options=8;
(i.e. add a new line above them)

Back to the top

Comments / View


Title Problem translating over the EN pack
Description If you translate over files in the English language pack using the on-this-page translation feature and then later the full-file translation screen, a bug will occur. Upon trying to translate the full-file, only previously edited language strings will be shown as available for editing.
Affects Complex (see above)
Fix First make sure this bugfix is applied: ocPortal - Entry: Editing language strings via the 'On this page' feature broken.

Change line 357 of adminzone/pages/modules/admin_lang.php from:

Code

      $for_base_lang=get_lang_file_map($base_lang,$lang_file);
to:

Code

      $for_base_lang=get_lang_file_map($base_lang,$lang_file,true);

and change line 477 from:

Code

      $for_base_lang=get_lang_file_map(fallback_lang(),$lang_file);
to:

Code

      $for_base_lang=get_lang_file_map(fallback_lang(),$lang_file,true);

Back to the top

Comments / View


Title Problem with WYSIWYG spellchecker
Description An error will be given when using the WYSIWYG spellchecker:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in (…)/data/areaedit/plugins/Spel
lChecker/spell-check-logic.php on line 105
Affects All users
Fix Change line 105 of data/areaedit/plugins/SpellChecker/spell-check-logic.php to:

Code

      $temptext=tempnam((((ini_get('safe_mode')=='1') || ((ini_get('open_basedir')!='') && (strpos(ini_get('open_basedir'),'/tmp')===false)))?get_custom_file_base().'/uploads/attachments/':'/tmp/'),'spell_');

Back to the top

Comments / View


Title Recommend site, points not showing up
Description The number of points given for recommending the site is configurable as a config option. However, the option does not show up.
Affects All users
Fix Add this line to the end of lang/EN/points.ini:

Code

CONFIG_OPTION_points_RECOMMEND_SITE=The number of points given for recommending the site

Back to the top

Comments / View


Title The 'view' link for a new author is incorrect.
Description A 'the requested page returned no output' error is shown when clicking the 'View' do-next icon after adding an author.
Affects All users
Fix Change line 241 of cms/pages/modules/cms_authors.php from:

Code

               is_null($author)?NULL:array('authors',array('type'=>'view','id'=>$author),get_module_zone('authors')),               // View this
to:

Code

               is_null($author)?NULL:array('authors',array('type'=>'misc','id'=>$author),get_module_zone('authors')),               // View this

Back to the top

Comments / View


Title The notes area on the Admin Zone front pages may not work
Description The notes area will not work correctly if:
  • notes are edited more than once
  • block cacheing is enabled
Affects All users
Fix Change line 125 of sources/config.php from:

Code

   $GLOBALS['SITE_DB']->query_insert('long_values',array('date_and_time'=>time(),'the_value'=>strval($value),'the_name'=>$name));
to:

Code

   $GLOBALS['SITE_DB']->query_delete('long_values',array('the_name'=>$name),'',1);
   $GLOBALS['SITE_DB']->query_insert('long_values',array('date_and_time'=>time(),'the_value'=>strval($value),'the_name'=>$name));
(in other words, add a new line before)

Change line 45 of sources/blocks/main_staff_checklist from:

Code

      $info['cache_on']='';
to:

Code

      $info['cache_on']='array((count($_POST)>0)?rand(1,32000):0)';

Clear the block cache.

Back to the top

Comments / View


Title Warning tallies are incorrect
Description The warning tallies are incorrect. The tallies shown are the same for all members, and equal to the total number of warnings ever made to all members.
Affects OCF users
Fix Change line 157 of sources/ocf_moderation_action.php from:

Code

   $GLOBALS['FORUM_DB']->query('UPDATE '.$GLOBALS['FORUM_DB']->get_table_prefix().'f_members SET m_cache_warnings=(m_cache_warnings+1)');
to:

Code

   $GLOBALS['FORUM_DB']->query('UPDATE '.$GLOBALS['FORUM_DB']->get_table_prefix().'f_members SET m_cache_warnings=(m_cache_warnings+1) WHERE id='.(string)intval($member_id));

Next run this SQL query in something like phpMyAdmin:

Code

UPDATE ocp2_f_members m SET m.m_cache_warnings=(SELECT COUNT(*) FROM ocp2_f_warnings w WHERE w.w_member_id=m.id)
(substitute 'ocp2_' with your correct table prefix)

Back to the top

Comments / View