From: moodler Date: Mon, 27 Mar 2006 04:37:05 +0000 (+0000) Subject: New field plugin for dates X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=7054c0e4d69f3fca411048087a869a507b6437e3;p=moodle.git New field plugin for dates --- diff --git a/mod/data/field/date/field.class.php b/mod/data/field/date/field.class.php new file mode 100755 index 0000000000..b8ecb087c7 --- /dev/null +++ b/mod/data/field/date/field.class.php @@ -0,0 +1,89 @@ +field->id, 'recordid', $recordid); + } else { + $content = time(); + } + + $str = '
'; + $str .= get_string('date').': '; + $str .= print_date_selector('field_'.$this->field->id.'_day', 'field_'.$this->field->id.'_month', + 'field_'.$this->field->id.'_year', $content, true); + $str .= '
'; + + return $str; + } + + function update_content($recordid, $value, $name='') { + + $names = explode('_',$name); + $name = $names[2]; // day month or year + + $this->$name = $value; + + if ($this->day and $this->month and $this->year) { // All of them have been collected now + + $content = new object; + $content->fieldid = $this->field->id; + $content->recordid = $recordid; + $content->content = make_timestamp($this->year, $this->month, $this->day, 12, 0, 0, 0, false); + + if ($oldcontent = get_record('data_content','fieldid', $this->field->id, 'recordid', $recordid)) { + $content->id = $oldcontent->id; + return update_record('data_content', $content); + } else { + return insert_record('data_content', $content); + } + } + } + + function display_browse_field($recordid, $template) { + + global $CFG; + + if ($content = get_field('data_content', 'content', 'fieldid', $this->field->id, 'recordid', $recordid)){ + return userdate($content, get_string('strftimedate'), 0); + } + } + + +} + +?> diff --git a/mod/data/field/date/icon.gif b/mod/data/field/date/icon.gif new file mode 100755 index 0000000000..d4bef9d110 Binary files /dev/null and b/mod/data/field/date/icon.gif differ diff --git a/mod/data/field/date/mod.html b/mod/data/field/date/mod.html new file mode 100755 index 0000000000..155b409f87 --- /dev/null +++ b/mod/data/field/date/mod.html @@ -0,0 +1,10 @@ + + + + + + + + + +
:
: