当前位置: 首页>>代码示例>>PHP>>正文


PHP grade_item::is_locked方法代码示例

本文整理汇总了PHP中grade_item::is_locked方法的典型用法代码示例。如果您正苦于以下问题:PHP grade_item::is_locked方法的具体用法?PHP grade_item::is_locked怎么用?PHP grade_item::is_locked使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在grade_item的用法示例。


在下文中一共展示了grade_item::is_locked方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: is_locked

 /**
  * Check grade lock status. Uses both grade item lock and grade lock.
  * Internally any date in locked field (including future ones) means locked,
  * the date is stored for logging purposes only.
  *
  * @return bool True if locked, false if not
  */
 public function is_locked() {
     $this->load_grade_item();
     if (empty($this->grade_item)) {
         return !empty($this->locked);
     } else {
         return !empty($this->locked) or $this->grade_item->is_locked();
     }
 }
开发者ID:narasimhaeabyas,项目名称:tataaiapro,代码行数:15,代码来源:grade_grade.php

示例2: is_locked

 /**
  * Returns the locked state/date of the grade categories' associated grade_item.
  *
  * This method is also available in grade_item, for cases where the object type is not known.
  *
  * @return bool
  */
 public function is_locked()
 {
     $this->load_grade_item();
     return $this->grade_item->is_locked();
 }
开发者ID:covex-nn,项目名称:moodle,代码行数:12,代码来源:grade_category.php

示例3: stdClass

     break;
 default:
     // existing grade items
     if (!empty($map[$key])) {
         // case of an id, only maps id of a grade_item
         // this was idnumber
         if (!($gradeitem = new grade_item(array('id' => $map[$key], 'courseid' => $course->id)))) {
             // supplied bad mapping, should not be possible since user
             // had to pick mapping
             $status = false;
             import_cleanup($importcode);
             echo $OUTPUT->notification(get_string('importfailed', 'grades'));
             break 3;
         }
         // check if grade item is locked if so, abort
         if ($gradeitem->is_locked()) {
             $status = false;
             import_cleanup($importcode);
             echo $OUTPUT->notification(get_string('gradeitemlocked', 'grades'));
             break 3;
         }
         $newgrade = new stdClass();
         $newgrade->itemid = $gradeitem->id;
         if ($gradeitem->gradetype == GRADE_TYPE_SCALE and $verbosescales) {
             if ($value === '' or $value == '-') {
                 $value = null;
                 // no grade
             } else {
                 $scale = $gradeitem->load_scale();
                 $scales = explode(',', $scale->scale);
                 $scales = array_map('trim', $scales);
开发者ID:covex-nn,项目名称:moodle,代码行数:31,代码来源:index.php

示例4: grade_update

/**
 * Submit new or update grade; update/create grade_item definition. Grade must have userid specified,
 * rawgrade and feedback with format are optional. rawgrade NULL means 'Not graded', missing property
 * or key means do not change existing.
 *
 * Only following grade item properties can be changed 'itemname', 'idnumber', 'gradetype', 'grademax',
 * 'grademin', 'scaleid', 'multfactor', 'plusfactor', 'deleted' and 'hidden'.
 *
 * Manual, course or category items can not be updated by this function.
 * @param string $source source of the grade such as 'mod/assignment'
 * @param int $courseid id of course
 * @param string $itemtype type of grade item - mod, block
 * @param string $itemmodule more specific then $itemtype - assignment, forum, etc.; maybe NULL for some item types
 * @param int $iteminstance instance it of graded subject
 * @param int $itemnumber most probably 0, modules can use other numbers when having more than one grades for each user
 * @param mixed $grades grade (object, array) or several grades (arrays of arrays or objects), NULL if updating grade_item definition only
 * @param mixed $itemdetails object or array describing the grading item, NULL if no change
 */
function grade_update($source, $courseid, $itemtype, $itemmodule, $iteminstance, $itemnumber, $grades = NULL, $itemdetails = NULL)
{
    global $USER;
    // only following grade_item properties can be changed in this function
    $allowed = array('itemname', 'idnumber', 'gradetype', 'grademax', 'grademin', 'scaleid', 'multfactor', 'plusfactor', 'deleted', 'hidden');
    // grade item identification
    $params = compact('courseid', 'itemtype', 'itemmodule', 'iteminstance', 'itemnumber');
    if (is_null($courseid) or is_null($itemtype)) {
        debugging('Missing courseid or itemtype');
        return GRADE_UPDATE_FAILED;
    }
    if (!($grade_items = grade_item::fetch_all($params))) {
        // create a new one
        $grade_item = false;
    } else {
        if (count($grade_items) == 1) {
            $grade_item = reset($grade_items);
            unset($grade_items);
            //release memory
        } else {
            debugging('Found more than one grade item');
            return GRADE_UPDATE_MULTIPLE;
        }
    }
    if (!empty($itemdetails['deleted'])) {
        if ($grade_item) {
            if ($grade_item->delete($source)) {
                return GRADE_UPDATE_OK;
            } else {
                return GRADE_UPDATE_FAILED;
            }
        }
        return GRADE_UPDATE_OK;
    }
    /// Create or update the grade_item if needed
    if (!$grade_item) {
        if ($itemdetails) {
            $itemdetails = (array) $itemdetails;
            // grademin and grademax ignored when scale specified
            if (array_key_exists('scaleid', $itemdetails)) {
                if ($itemdetails['scaleid']) {
                    unset($itemdetails['grademin']);
                    unset($itemdetails['grademax']);
                }
            }
            foreach ($itemdetails as $k => $v) {
                if (!in_array($k, $allowed)) {
                    // ignore it
                    continue;
                }
                if ($k == 'gradetype' and $v == GRADE_TYPE_NONE) {
                    // no grade item needed!
                    return GRADE_UPDATE_OK;
                }
                $params[$k] = $v;
            }
        }
        $grade_item = new grade_item($params);
        $grade_item->insert();
    } else {
        if ($grade_item->is_locked()) {
            $message = get_string('gradeitemislocked', 'grades', $grade_item->itemname);
            notice($message);
            return GRADE_UPDATE_ITEM_LOCKED;
        }
        if ($itemdetails) {
            $itemdetails = (array) $itemdetails;
            $update = false;
            foreach ($itemdetails as $k => $v) {
                if (!in_array($k, $allowed)) {
                    // ignore it
                    continue;
                }
                if ($grade_item->{$k} != $v) {
                    $grade_item->{$k} = $v;
                    $update = true;
                }
            }
            if ($update) {
                $grade_item->update();
            }
        }
//.........这里部分代码省略.........
开发者ID:BackupTheBerlios,项目名称:samouk-svn,代码行数:101,代码来源:gradelib.php

示例5: grade_update

/**
 * Submit new or update grade; update/create grade_item definition. Grade must have userid specified,
 * rawgrade and feedback with format are optional. rawgrade NULL means 'Not graded'.
 * Missing property or key means does not change the existing value.
 *
 * Only following grade item properties can be changed 'itemname', 'idnumber', 'gradetype', 'grademax',
 * 'grademin', 'scaleid', 'multfactor', 'plusfactor', 'deleted' and 'hidden'. 'reset' means delete all current grades including locked ones.
 *
 * Manual, course or category items can not be updated by this function.
 *
 * @category grade
 * @param string $source Source of the grade such as 'mod/assignment'
 * @param int    $courseid ID of course
 * @param string $itemtype Type of grade item. For example, mod or block
 * @param string $itemmodule More specific then $itemtype. For example, assignment or forum. May be NULL for some item types
 * @param int    $iteminstance Instance ID of graded item
 * @param int    $itemnumber Most probably 0. Modules can use other numbers when having more than one grade for each user
 * @param mixed  $grades Grade (object, array) or several grades (arrays of arrays or objects), NULL if updating grade_item definition only
 * @param mixed  $itemdetails Object or array describing the grading item, NULL if no change
 * @return int Returns GRADE_UPDATE_OK, GRADE_UPDATE_FAILED, GRADE_UPDATE_MULTIPLE or GRADE_UPDATE_ITEM_LOCKED
 */
function grade_update($source, $courseid, $itemtype, $itemmodule, $iteminstance, $itemnumber, $grades = NULL, $itemdetails = NULL)
{
    global $USER, $CFG, $DB;
    // only following grade_item properties can be changed in this function
    $allowed = array('itemname', 'idnumber', 'gradetype', 'grademax', 'grademin', 'scaleid', 'multfactor', 'plusfactor', 'deleted', 'hidden');
    // list of 10,5 numeric fields
    $floats = array('grademin', 'grademax', 'multfactor', 'plusfactor');
    // grade item identification
    $params = compact('courseid', 'itemtype', 'itemmodule', 'iteminstance', 'itemnumber');
    if (is_null($courseid) or is_null($itemtype)) {
        debugging('Missing courseid or itemtype');
        return GRADE_UPDATE_FAILED;
    }
    if (!($grade_items = grade_item::fetch_all($params))) {
        // create a new one
        $grade_item = false;
    } else {
        if (count($grade_items) == 1) {
            $grade_item = reset($grade_items);
            unset($grade_items);
            //release memory
        } else {
            debugging('Found more than one grade item');
            return GRADE_UPDATE_MULTIPLE;
        }
    }
    if (!empty($itemdetails['deleted'])) {
        if ($grade_item) {
            if ($grade_item->delete($source)) {
                return GRADE_UPDATE_OK;
            } else {
                return GRADE_UPDATE_FAILED;
            }
        }
        return GRADE_UPDATE_OK;
    }
    /// Create or update the grade_item if needed
    if (!$grade_item) {
        if ($itemdetails) {
            $itemdetails = (array) $itemdetails;
            // grademin and grademax ignored when scale specified
            if (array_key_exists('scaleid', $itemdetails)) {
                if ($itemdetails['scaleid']) {
                    unset($itemdetails['grademin']);
                    unset($itemdetails['grademax']);
                }
            }
            foreach ($itemdetails as $k => $v) {
                if (!in_array($k, $allowed)) {
                    // ignore it
                    continue;
                }
                if ($k == 'gradetype' and $v == GRADE_TYPE_NONE) {
                    // no grade item needed!
                    return GRADE_UPDATE_OK;
                }
                $params[$k] = $v;
            }
        }
        $grade_item = new grade_item($params);
        $grade_item->insert();
    } else {
        if ($grade_item->is_locked()) {
            // no notice() here, test returned value instead!
            return GRADE_UPDATE_ITEM_LOCKED;
        }
        if ($itemdetails) {
            $itemdetails = (array) $itemdetails;
            $update = false;
            foreach ($itemdetails as $k => $v) {
                if (!in_array($k, $allowed)) {
                    // ignore it
                    continue;
                }
                if (in_array($k, $floats)) {
                    if (grade_floats_different($grade_item->{$k}, $v)) {
                        $grade_item->{$k} = $v;
                        $update = true;
                    }
//.........这里部分代码省略.........
开发者ID:saurabh947,项目名称:MoodleLearning,代码行数:101,代码来源:gradelib.php

示例6: update_grade_item

 /**
  * This updates existing grade items.
  *
  * @param int $courseid The course ID.
  * @param array $map Mapping information provided by the user.
  * @param int $key The line that we are currently working on.
  * @param bool $verbosescales Form setting for grading with scales.
  * @param string $value The grade value.
  * @return array grades to be updated.
  */
 protected function update_grade_item($courseid, $map, $key, $verbosescales, $value)
 {
     // Case of an id, only maps id of a grade_item.
     // This was idnumber.
     if (!($gradeitem = new grade_item(array('id' => $map[$key], 'courseid' => $courseid)))) {
         // Supplied bad mapping, should not be possible since user
         // had to pick mapping.
         $this->cleanup_import(get_string('importfailed', 'grades'));
         return null;
     }
     // Check if grade item is locked if so, abort.
     if ($gradeitem->is_locked()) {
         $this->cleanup_import(get_string('gradeitemlocked', 'grades'));
         return null;
     }
     $newgrade = new stdClass();
     $newgrade->itemid = $gradeitem->id;
     if ($gradeitem->gradetype == GRADE_TYPE_SCALE and $verbosescales) {
         if ($value === '' or $value == '-') {
             $value = null;
             // No grade.
         } else {
             $scale = $gradeitem->load_scale();
             $scales = explode(',', $scale->scale);
             $scales = array_map('trim', $scales);
             // Hack - trim whitespace around scale options.
             array_unshift($scales, '-');
             // Scales start at key 1.
             $key = array_search($value, $scales);
             if ($key === false) {
                 $this->cleanup_import(get_string('badgrade', 'grades'));
                 return null;
             }
             $value = $key;
         }
         $newgrade->finalgrade = $value;
     } else {
         if ($value === '' or $value == '-') {
             $value = null;
             // No grade.
         } else {
             // If the value has a local decimal or can correctly be unformatted, do it.
             $validvalue = unformat_float($value, true);
             if ($validvalue !== false) {
                 $value = $validvalue;
             } else {
                 // Non numeric grade value supplied, possibly mapped wrong column.
                 $this->cleanup_import(get_string('badgrade', 'grades'));
                 return null;
             }
         }
         $newgrade->finalgrade = $value;
     }
     $this->newgrades[] = $newgrade;
     return $this->newgrades;
 }
开发者ID:evltuma,项目名称:moodle,代码行数:66,代码来源:load_data.php


注:本文中的grade_item::is_locked方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。