Add-ons
  1. Add-ons
  2. CONTRIB-3556

Certificate not available when all conditions are met.

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Not a bug
    • Affects Version/s: 2.2.2
    • Fix Version/s: None
    • Component/s: Module: Certificate
    • Labels:
      None
    • Affected Branches:
      MOODLE_22_STABLE
    • Rank:
      38999

      Description

      Conditions are set for Certificate to print. Some students meet conditions but are not allowed access to Certificate.

        Activity

        Hide
        Mark Nelson added a comment -

        Hi Jeffery,

        This sounds like it would be an issue with the conditonal code, rather than the certificate plugin, which does not personally handle the conditional checks. I have run into issues before where the user's grade was returning as 99.9% from the gradebook API, so did not meet the 100% grade set on the module settings. However, without more information I can't really provide you with an exact answer. What are the conditions you have set?

        Regards,

        Mark

        Show
        Mark Nelson added a comment - Hi Jeffery, This sounds like it would be an issue with the conditonal code, rather than the certificate plugin, which does not personally handle the conditional checks. I have run into issues before where the user's grade was returning as 99.9% from the gradebook API, so did not meet the 100% grade set on the module settings. However, without more information I can't really provide you with an exact answer. What are the conditions you have set? Regards, Mark
        Hide
        Jeffery Watkins added a comment -

        Hi Mark,

        It very well could be completion tracking. The Certificate is set with a number of conditions, even when all are seemingly met, the Certificate stays grayed out for some users.

        Most are grade condition ranges that are "must be at least 70 and less than 110". The 110 is there because we found that students getting 100 would not get the Certificate because grade condition was less than 100.

        Jeff

        Show
        Jeffery Watkins added a comment - Hi Mark, It very well could be completion tracking. The Certificate is set with a number of conditions, even when all are seemingly met, the Certificate stays grayed out for some users. Most are grade condition ranges that are "must be at least 70 and less than 110". The 110 is there because we found that students getting 100 would not get the Certificate because grade condition was less than 100. Jeff
        Hide
        Michael Crawford added a comment -

        We are having a similar issue. We have Moodle 2.1.3 with Certificate Module installed in 5 differing courses. All but 1 are working with the non-working course stopping working on 31 Mar. It worked fine until then. Students that meet the condition (70% - 110%) on a quiz are not able to click on the certificate. Any help/ideas where to look would be appreciated.

        Show
        Michael Crawford added a comment - We are having a similar issue. We have Moodle 2.1.3 with Certificate Module installed in 5 differing courses. All but 1 are working with the non-working course stopping working on 31 Mar. It worked fine until then. Students that meet the condition (70% - 110%) on a quiz are not able to click on the certificate. Any help/ideas where to look would be appreciated.
        Hide
        Mark Nelson added a comment - - edited

        The code responsible for the conditional checks is in lib/conditionlib.php in the function is_available(). If you go to the line "$score = $this->get_cached_grade_score($gradeitemid, $grabthelot, $userid);" and place underneath it "echo $score;" (without the quotes) the score will be printed to the screen. If you log in as a student, and then compare the score printed to the grade range specified in the settings you can see if the grade range is being met. Please note, remove the echo statement ASAP, as it will appear for all students. If you aren't comfortable with outputting the score to the browser, then feel free to write it to a file, or only output it depending on the USER->id, this will require some coding knowledge though.

        Show
        Mark Nelson added a comment - - edited The code responsible for the conditional checks is in lib/conditionlib.php in the function is_available(). If you go to the line "$score = $this->get_cached_grade_score($gradeitemid, $grabthelot, $userid);" and place underneath it "echo $score;" (without the quotes) the score will be printed to the screen. If you log in as a student, and then compare the score printed to the grade range specified in the settings you can see if the grade range is being met. Please note, remove the echo statement ASAP, as it will appear for all students. If you aren't comfortable with outputting the score to the browser, then feel free to write it to a file, or only output it depending on the USER->id, this will require some coding knowledge though.
        Hide
        Helen Foster added a comment -

        Closing this resolved issue, as requested by issue assignee Mark.

        Show
        Helen Foster added a comment - Closing this resolved issue, as requested by issue assignee Mark.

          People

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

            Dates

            • Created:
              Updated:
              Resolved:

              Development