fwrite ($bf,full_tag("DEFAULTAPPROVAL",4,false,$glossary->defaultapproval));
fwrite ($bf,full_tag("GLOBALGLOSSARY",4,false,$glossary->globalglossary));
fwrite ($bf,full_tag("ENTBYPAGE",4,false,$glossary->entbypage));
+ fwrite ($bf,full_tag("EDITALWAYS",4,false,$glossary->editalways));
fwrite ($bf,full_tag("RSSTYPE",4,false,$glossary->rsstype));
fwrite ($bf,full_tag("RSSARTICLES",4,false,$glossary->rssarticles));
fwrite ($bf,full_tag("TIMECREATED",4,false,$glossary->timecreated));
}
}
}
+
+ if ( $oldversion < 2004080800) {
+ table_column("glossary","","editalways","tinyint","2", "unsigned", "0", "", "entbypage");
+ }
return true;
}
defaultapproval tinyint(2) unsigned NOT NULL default '1',
globalglossary tinyint(2) unsigned NOT NULL default '0',
entbypage tinyint(3) unsigned NOT NULL default '10',
+ editalways tinyint(2) unsigned NOT NULL default '0',
rsstype tinyint(2) unsigned NOT NULL default '0',
rssarticles tinyint(2) unsigned NOT NULL default '0',
assessed int(10) unsigned NOT NULL default '0',
showspecial number(2) default '1' not null,
showall number(2) default '1' not null,
showalphabet number(2) default '1' not null,
+ editalways number(2) default '0' NOT NULL,
rsstype number(2) default '0' NOT NULL,
rssarticles number(2) default '0' NOT NULL,
timecreated number(10) default '0' not null,
}
}
+ if ( $oldversion < 2004080800) {
+ table_column("glossary","","editalways","integer","2", "unsigned", "0", "", "entbypage");
+ }
+
return true;
}
defaultapproval int2 NOT NULL default '1',
globalglossary int2 NOT NULL default '0',
entbypage int NOT NULL default '10',
+ editalways integer NOT NULL default '0',
rsstype integer NOT NULL default '0',
rssarticles integer NOT NULL default '0',
assessed int4 NOT NULL default '0',
$icon = "$CFG->pixpath/t/delete.gif";
}
- // Exported entries can be updated/deleted only by teachers in the main glossary
- if ( !$importedentry and ($isteacher or !$ismainglossary) ) {
+ //Decide if an entry is editable:
+ // -It isn't a imported entry (so nobody can edit a imported (from secondary to main) entry)) and
+ // -The user is teacher or he is a student with time permissions (edit period or editalways defined).
+ $ineditperiod = (time() - $entry->timemodified < $CFG->maxeditingtime);
+ if ( !$importedentry and ($isteacher or ($entry->userid == $USER->id and ($glossary->editalways or $ineditperiod)))) {
$return .= " <a title=\"" . get_string("delete") . "\" href=\"deleteentry.php?id=$cm->id&mode=delete&entry=$entry->id&prevmode=$mode&hook=$hook\"><img src=\"";
$return .= $icon;
$return .= "\" height=11 width=11 border=0></a> ";
if (!isset($form->showspecial)) {
$form->showspecial = 1;
}
- if (!isset($form->rsstype)) {
- $form->rsstype = 0;
- }
- if (!isset($form->rssarticles)) {
- $form->rssarticles = 0;
- }
+if (!isset($form->editalways)) {
+ $form->editalways = 0;
+}
+if (!isset($form->rsstype)) {
+ $form->rsstype = 0;
+}
+if (!isset($form->rssarticles)) {
+ $form->rssarticles = 0;
+}
?>
<FORM name="form" method="post" action="<?php p($ME) ?>">
<CENTER>
</select> <?php helpbutton("shows", get_string("showall", "glossary"), "glossary") ?>
</TD>
</TR>
+<TR valign=top>
+ <TD align=right><P><B><?php echo get_string("editalways", "glossary") ?>:</B></P></TD>
+ <TD>
+ <select size="1" name="editalways">
+ <option value="1" <?php
+ if ( $form->editalways ) {
+ echo "selected";
+ }
+ ?>
+ ><?php echo get_string("yes") ?></option>
+ <option value="0" <?php
+ if ( !$form->editalways ) {
+ echo "selected";
+ }
+ ?>><?php echo get_string("no") ?>
+ </option>
+ </select> <?php helpbutton("editalways", get_string("editalways", "glossary"), "glossary") ?>
+ </TD>
+</TR>
<?php
//Only show rss parameters if rss is activated at site and glossary levels
if (isset($CFG->enablerssfeeds) && isset($CFG->glossary_enablerssfeeds) &&
$glossary->defaultapproval = backup_todb($info['MOD']['#']['DEFAULTAPPROVAL']['0']['#']);
$glossary->globalglossary = backup_todb($info['MOD']['#']['GLOBALGLOSSARY']['0']['#']);
$glossary->entbypage = backup_todb($info['MOD']['#']['ENTBYPAGE']['0']['#']);
+ $glossary->editalways = backup_todb($info['MOD']['#']['EDITALWAYS']['0']['#']);
$glossary->rsstype = backup_todb($info['MOD']['#']['RSSTYPE']['0']['#']);
$glossary->rssarticles = backup_todb($info['MOD']['#']['RSSARTICLES']['0']['#']);
$glossary->timecreated = backup_todb($info['MOD']['#']['TIMECREATED']['0']['#']);
/// This fragment is called by moodle_needs_upgrading() and /admin/index.php
/////////////////////////////////////////////////////////////////////////////////
-$module->version = 2004072700; // The current module version (Date: YYYYMMDDXX)
-$module->requires = 2004052501; // Requires this Moodle version
+$module->version = 2004080800; // The current module version (Date: YYYYMMDDXX)
+$module->requires = 2004080300; // Requires this Moodle version
$module->cron = 0; // Period for cron to check this module (secs)
$release = "1.4 development"; // User-friendly version number