Moodle
  1. Moodle
  2. MDL-16848

Database Activity - Required Viewing setting is incorrectly preventing users from viewing database entries

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Duplicate
    • Affects Version/s: 1.9.2
    • Fix Version/s: None
    • Labels:
      None
    • Environment:
      Linux server, apache
    • Database:
      MySQL
    • Affected Branches:
      MOODLE_19_STABLE
    • Rank:
      12718

      Description

      When participants view a database setup to require 1 entry for a user, but that is set to allow them to see other entries without first posting, the database activity is preventing them from viewing those entries with the following error message:

      "You must add 1 more entry/entries before you can view other participants' entries."

      This message should only be appearing if the database activity is set to require users to post an entry first. An example of a database activity where this is occurring is attached.

        Issue Links

          Activity

          Hide
          Antonio Piedras Morente added a comment -

          To solve this i think is needed to change code in /mod/data/view.php

          Change this block

          // Check the number of entries required against the number of entries already made (doesn't apply to teachers)
          $requiredentries_allowed = true;
          $numentries = data_numentries($data);
          if ($data->requiredentries > 0 && $numentries < $data->requiredentries && !has_capability('mod/data:manageentries', $context))

          { $data->entriesleft = $data->requiredentries - $numentries; $strentrieslefttoadd = get_string('entrieslefttoadd', 'data', $data); notify($strentrieslefttoadd); $requiredentries_allowed = false; }

          by the next two

          // Check the number of entries required to view other participants' entries against the number of entries already made (doesn't apply to teachers)
          $requiredentries_allowed = true;
          $numentries = data_numentries($data);
          if ($data->requiredentriestoview > 0 && $numentries < $data->requiredentriestoview && !has_capability('mod/data:manageentries', $context))

          { $data->entriesleft = $data->requiredentriestoview - $numentries; $strentrieslefttoadd = get_string('entrieslefttoadd', 'data', $data); notify($strentrieslefttoadd); $requiredentries_allowed = false; }

          // Check the number of entries required against the number of entries already made (doesn't apply to teachers)
          if ($data->requiredentries > 0 && $numentries < $data->requiredentries && !has_capability('mod/data:manageentries', $context))

          { $requiredentries = get_string('requiredentries', 'data') . ': ' . $data->requiredentries; notify($requiredentries); }

          maybe then message of the second block must be better and show how many entries required and how many entries already made.

          Bye

          Show
          Antonio Piedras Morente added a comment - To solve this i think is needed to change code in /mod/data/view.php Change this block // Check the number of entries required against the number of entries already made (doesn't apply to teachers) $requiredentries_allowed = true; $numentries = data_numentries($data); if ($data->requiredentries > 0 && $numentries < $data->requiredentries && !has_capability('mod/data:manageentries', $context)) { $data->entriesleft = $data->requiredentries - $numentries; $strentrieslefttoadd = get_string('entrieslefttoadd', 'data', $data); notify($strentrieslefttoadd); $requiredentries_allowed = false; } by the next two // Check the number of entries required to view other participants' entries against the number of entries already made (doesn't apply to teachers) $requiredentries_allowed = true; $numentries = data_numentries($data); if ($data->requiredentriestoview > 0 && $numentries < $data->requiredentriestoview && !has_capability('mod/data:manageentries', $context)) { $data->entriesleft = $data->requiredentriestoview - $numentries; $strentrieslefttoadd = get_string('entrieslefttoadd', 'data', $data); notify($strentrieslefttoadd); $requiredentries_allowed = false; } // Check the number of entries required against the number of entries already made (doesn't apply to teachers) if ($data->requiredentries > 0 && $numentries < $data->requiredentries && !has_capability('mod/data:manageentries', $context)) { $requiredentries = get_string('requiredentries', 'data') . ': ' . $data->requiredentries; notify($requiredentries); } maybe then message of the second block must be better and show how many entries required and how many entries already made. Bye
          Hide
          Jérôme Mouneyrac added a comment -

          This is a duplicate of MDL-16999

          Show
          Jérôme Mouneyrac added a comment - This is a duplicate of MDL-16999

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: